Android 模擬器上使用Market程式
Android SDK內含一套可以在PC上模擬Android系統,但依照PC上玩Android手機–Android Emulator一文中發現最重要的Market程式不見蹤影,感覺沒有Android Market再怎麼模擬總是不對味,所特別再介紹如何在模擬器中安裝Android Market,雖然有點繁瑣但是值得的(以Windows 7系統為操作範例)。
▼首先進入到目錄 C:\Program Files (x86)\Android\android-sdk\platforms\android-9\images 內找尋 system.img 的檔案,在該檔案上按下滑鼠右鍵並選擇複製。
▼到 C:\Users\Administrator\.android\avd\Desire.avd 目錄上選擇貼上,黃色底的文字就是虛擬裝置的名稱(請參考這裡如何建立虛擬裝置)。
▼下載下面三個檔案 Vending.apk, GoogleServicesFramework.apk 與 ADB.zip,並將adb.zip解壓縮後全部複製到 C:\Program Files (x86)\Android\android-sdk\tools 目錄內,因為Android 2.3 SDK 已經將 adb 工具移至 platform-tools 目錄上,所以需要adb這個工具程式,若你使用Android 2.2 SDK 則可以忽略 ADB.ZIP 下載的動作。
▼按下【視窗鍵+R】並輸入"cmd" 按下「Enter」開啟DOS視窗,並輸入"cd\Program Files (x86)\Android\android-sdk\tools" 來切換目錄,接著輸入如下字串後並按下「Enter」。
emulator –avd desire –partition-size 100
黃色底文字desire是虛擬裝置的名稱,此指令就是啟動模擬器並載入虛擬裝置,切忌請勿使用SDK manager方式來啟動android emulator,否則會失敗的。
▼當成功啟動 android 模擬器後,再開啟另一個DOS視窗,並輸入"cd\Program Files (x86)\Android\android-sdk\tools" 切換目錄,輸入如下文字後並按「Enter」。
adb -s emulator-5554 shell
▼為什麼是5554呢?可至模擬器的視窗上查看編號是否一致。
▼進入shell後dos視窗應該會出現#符號,玩過linux的人大概都知道,表示目前在最高權限的環境下,此時輸入 "mount" 並按下「Enter」,在出現的的文字中尋找 "/dev/block/mtdblock0 /system yaffs2 ro 00" 文字,如下圖。
▼因為要將Vending.apk與GoogleServicesFramework.apk兩個檔案放入至 /system/app 目錄下,所以需重新 mount 成可寫入狀態(read-write),所以輸入下文字並下「Enter」
mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system
接著再更改目錄的權限設定,輸入 "chmod 777 /system/app" 按下「Enter」,最後輸入 "Exit" 來離開。
▼接下來就是複製檔案到/system/app目錄,在剛才以exit離開的dos視窗上分別輸入如下;
輸入 " adb -s emulator-5554 push Vending.apk /system/app/. " 按「 Enter」
輸入 " adb -s emulator-5554 push GoogleServicesFramework.apk /system/app/. " 按「 Enter」
▼在/system/app目錄複製檔案後還須將SdkSetup.apk檔移除,否則SDK重新啟動後會恢復原始的設定,所以輸入 " adb –s emulator-5554 shell rm /system/app/SdkSetup.apk " 後按下「Enter」。
▼最後關閉模擬器視窗(是關閉不是縮小),到 C:\Users\Username\.android\avd\Desire.avd 目錄上刪除 userdata-qemu.img 與 cache.img 兩個檔案(黃色底文字desire是虛擬裝置的名稱)。
▼重新啓動 android 模擬器,結果你會發現 Android Market 已經安裝成功了。
▼執行Market時的服務條款說明。
▼成功的進入Market的應用程式分類區。
請教一下,是否您有遇到,都做好了之後,用sdk manager 開啟卻他又還原><
我沒遇到過,不過直覺要注意SDK的版本~~
我也是開啟後,也被還原了…@@
連語系都被改回英文介面XD
Android使用2.3.3版SDK、
Eclipse 使用20110615-0604
印象中我是使用 Android 2.3 SDK,記得 Android 2.2也是類似的方法都有成功,我有空再試試 Android 2.3.3 SDK看看~~
感謝大大回應,我試了好幾個版本,2.2、2.3.1、2.3.3、3.2、1.5版
最後試成功的是1.5版,但1.5版是人家做好的AVD
(xxx.avd整個資料夾壓縮)
我下載回來後再解開放至.android相對應的路徑即可。
但問題是1.5版的不支援Android Market,所以等於沒用,
不知大大有沒有做好的2.3或2.2版之AVD整包壓縮檔?
請問有 Android 2.3.3 SDK 使用 Market 有方法嗎?
一直被還原…
請問有沒有像Costello 所說的,已做好的的avd檔案可分享給我們嗎?我也只找到他人分享的1.5版可用,自己動手做都失敗會被還原..
請問我複製檔案到/system/app目錄的時候,doc視窗顯示out of memory該怎麼半??
我按照步驟做了,也沒出現甚麼錯誤….可是最後重新啟動還是沒有market耶! 甚至原先設定好的中文都被還原成英文了?????? 怎麼會這樣?????
請問能夠模擬market 3.3.11嗎?
請問
google play 也是用同樣的方法嗎
感恩喔 ~
未必!不同的SKD,方式不一定適用,可以試試~~
如果只是想玩App,可以用bluestacks~~
你可以參考 http://walker-a.com/archives/1654
Android4.0以上的 system.img 以移動到 C:\Program Files\Android\android-sdk\system-images\android-14\。
其中14是4.0,15是4.0.3,16是4.1.2,17是4.2。
請問,為何我跟你一樣都輸入emulator –avd XXXX –partition-size 100後
都會出現Hint: use ‘@foo’ to launch a virtual device named ‘foo’.
please use -help for more information
並且沒辦法打開模擬器
請問你後來是怎樣改的呢?
老師您好
請問我安裝好GooglePlay檔(com.android.vending.apk)以後,當關閉模擬器後在打開就閃退了,意即執行一次而已,我有嘗試刪除後重裝,仍然無法再啟動
有去DDMS-FileExplorer文件管理器Data/app與CMD指令刪除apk-adb uninstall package都沒有辦法回復
然後我曾經執行過的PackageExploer專案,刪過後還顯示在模擬器桌面中??
請問,應如何保留GooglePlay不受開關機影響而消失呢?謝謝您!