ubuntu/centos環境下玩android系統(二): linux下的android模擬器執行!
上一篇完成了Android的編譯,想必一定心裡癢癢了!這一篇將開始玩轉android模擬器!
如果不喜歡在linux下執行 emulator ,可直接看第三篇,第三篇講述windows下的模擬器,相對linux下,要簡單很多!
一.下載Andoird SDK,這次我選擇的是android-sdk_r15-linux.tgz
安裝很簡單,直接解壓到opt目錄下!最好配製一下PATH,以便執行時不用設定PATH環境變量了!在/etc/profile里加入
export PATH=/opt/android_sdk/android-sdk-linux/tools:$PATH
然後 $ source /etc/profile
二.接著,我們可以配製android sdk了
$ android list target
這個命令顯示可以應用的sdk,由於我們還沒有下載安裝,因此什麼也看不到。
下面將解決這個問題
直接執行
$ android
進入android sdk manager,直接點install packets,將會自動安裝,大約兩小時,安裝完畢!
$ android list target
----------
id: 1 or "android-3"
Name: Android 1.5
Type: Platform
API level: 3
Revision: 4
Skins: HVGA-P, QVGA-L, HVGA-L, QVGA-P, HVGA (default)
ABIs : armeabi
----------
id: 2 or "android-4"
Name: Android 1.6
Type: Platform
API level: 4
Revision: 3
Skins: WVGA854, QVGA, WVGA800 (default), HVGA
ABIs : armeabi
........//有省略
id: 5 or "android-10"
Name: Android 2.3.3
Type: Platform
API level: 10
Revision: 2
Skins: WVGA854, QVGA, WVGA800 (default), WQVGA432, WQVGA400, HVGA
ABIs : armeabi
...... //有省略,這裡特意列出android 2.3.3,因為後面就用它,別忘了我們前面編譯的android就是這個版本!
這個資訊很重要,對我們後面建立AVD(android virtual device)和執行android emulater提供了資訊!
三 .$ android create avd -n cjhavd -t 5
-n後面接需要建立avd的名字,-t後面接需要建立虛擬器的型別,5即為步驟android list target中得到的型別id號。
$ android list avd
將看到剛才我們建立的AVD
$ emulator -avd cjhavd
啟動模擬器,用預設的system.img,ramdisk.img,userdata.img
四. 關聯我們編譯好的android檔案
上節我們講過,順利編譯編譯後,將產生三個檔案system.img,ramdisk.img,userdata.img,為了讓模擬器找到這三個檔案,
進入android sdk 的目錄/platforms/android-10/images,用我們編譯好的system.img,ramdisk.img,userdata.img替換掉這三個檔案,然後
$ emulator -avd cjhavd
或者指定兩個環境變數,開啟/etc/profile在後面加上
export ANDROID_SWT=/opt/out/host/linux-x86/framework
export ANDROID_PRODUCT_OUT=/opt/out/target/product/generic
進入out/host\linux-x86/bin,也有emulator命令!這裡不再講解,有興趣的可以自己嘗試一下!
為了與前面協調,這裡列出目前為止/etc/profile未尾加上的內容
export JAVA_HOME=/opt/jdk/jdk1.6.0_29
export ANDROID_JAVA_HOME=$JAVA_HOME
export JRE_HOME=/opt/jdk/jdk1.6.0_29/jre
export PATH=/opt/jdk/jdk1.6.0_29/bin:$PATH
export ANDROID_SWT=/opt/out/host/linux-x86/framework
export ANDROID_PRODUCT_OUT=/opt/out/target/product/generic
export PATH=/opt/android_sdk/android-sdk-linux/tools:$PATH
enjoying it...