準備Java環境
本文只安裝sdk,不安裝什麼IDE,因為我只需要命令列模式開發即可。
首先安裝openjdk 1.6,然後安裝ant,這個不贅述。
下載SDK
從這裡下載SDK for Linux 64bit的版本: http://developer.android.com/sdk/index.html?hl=sk#download
下載後,解壓到本地目錄,比如/opt/目錄下, 然後設定環境變數,添加三行到~/.bashrc檔案
export ANDROID_HOME=/opt/android-sdk-linuxPATH=$PATH:/opt/android-sdk-linux/toolsPATH=$PATH:/opt/android-sdk-linux/platform-tools
運行Android SDK Manager
運行android命令,將會彈出SDK Manager對話方塊,從中選擇需要的package進行安裝
安裝類比裝置
android avd
具體參考官方文檔:http://developer.android.com/training/basics/firstapp/running-app.html
我為自己的moto680建立了一個類比裝置。 最後運行該類比裝置。
建立工程顯示targets
$ android list targetsAvailable Android targets:----------id: 1 or "android-10"Name: Android 2.3.3Type: PlatformAPI level: 10Revision: 2Skins: WQVGA400, HVGA, WVGA854, QVGA, WQVGA432, WVGA800 (default)Tag/ABIs : default/armeabi----------id: 2 or "android-19"Name: Android 4.4.2 Type: Platform API level: 19 Revision: 3 Skins: WQVGA400, HVGA, WXGA800-7in, WXGA800, WVGA854, QVGA, WQVGA432, WVGA800 (default), WSVGA, WXGA720 Tag/ABIs : default/armeabi-v7a----------id: 3 or "Google Inc.:Google APIs:10" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 2.3.3 (API level 10) Libraries: * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, WVGA800 (default), WQVGA400, QVGA, WQVGA432, HVGA Tag/ABIs : default/armeabi----------id: 4 or "Google Inc.:Google APIs x86:19" Name: Google APIs x86 Type: Add-On Vendor: Google Inc. Revision: 4 Description: Android + Google APIs x86 Based on Android 4.4.2 (API level 19) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA800 (default), QVGA, WSVGA, WXGA800-7in, WQVGA400, WVGA854, WXGA720, WXGA800, WQVGA432, HVGA Tag/ABIs : default/x86
建立工程
$ android create project --target android-10 --name MyFirstApp \--path MyFirstApp --activity MainActivity --package com.example.myfirstapp> Created project directory: MyFirstAppCreated directory /home/dean/work/gitlab_cloud/android/example/MyFirstApp/src/com/example/myfirstappAdded file MyFirstApp/src/com/example/myfirstapp/MainActivity.javaCreated directory /home/dean/work/gitlab_cloud/android/example/MyFirstApp/resCreated directory /home/dean/work/gitlab_cloud/android/example/MyFirstApp/binCreated directory /home/dean/work/gitlab_cloud/android/example/MyFirstApp/libsCreated directory /home/dean/work/gitlab_cloud/android/example/MyFirstApp/res/valuesAdded file MyFirstApp/res/values/strings.xmlCreated directory /home/dean/work/gitlab_cloud/android/example/MyFirstApp/res/layoutAdded file MyFirstApp/res/layout/main.xmlAdded file MyFirstApp/AndroidManifest.xmlAdded file MyFirstApp/build.xmlAdded file MyFirstApp/proguard-project.txtdean@dean-Aspire-V7-481G:~/work/gitlab_cloud/android/example$ lsMyFirstApp READMEdean@dean-Aspire-V7-481G:~/work/gitlab_cloud/android/example$ cd MyFirstApp/dean@dean-Aspire-V7-481G:~/work/gitlab_cloud/android/example/MyFirstApp$ lsAndroidManifest.xml ant.properties bin build.xml libs local.properties proguard-project.txt project.properties res src
編譯
運行下面的命令編譯
ant debug
部署程式到模擬器
$ adb install bin/MyFirstApp-debug.apk97 KB/s (4858 bytes in 0.048s)pkg: /data/local/tmp/MyFirstApp-debug.apkSuccess
運行程式好了,現在可以在模擬器裡面運行程式了。 運行程式MainActivity,顯示下面的文字:
Hello World, MainActivity
該文字其實是定義在./res/layout/main.xml 檔案中:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Hello World, MainActivity" /></LinearLayout>