標籤:android 解決方案 帳號登入 google 系統下載
Android 模擬器一直以速度奇慢無比著稱,基本慢到不可用,對比 iOS 開發用的模擬器,天壤之別,但是今天介紹的 Android模擬器 Genymotion,速度不亞於真機。
Genymotion 來自於 AndroVM 這個開源項目,基於 x86 和 VirtualBox,支援 OpenGL 加速,可以用於 Mac/Win/Linux。最近發布了新版,支援了 Android2.3/4.3,新增了拖拽安裝 apk,移除了 Google 市場(後面提供解決方案)。另外增加了功能更豐富的付費版,個人可以繼續使用免費版。
如何使用
簡單介紹下如何擷取和使用 Genymotion:
下載並安裝 VirtualBox;
註冊 Genymotion 帳號並登入;
根據自己的系統下載並安裝 Genymotion,及 Eclipse 外掛程式(可選);
然後就可以啟動 Genymotion 程式了:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6D/91/wKioL1VmuHWQGEhTAAGtbDch4Ss261.jpg" title="1.png" alt="wKioL1VmuHWQGEhTAAGtbDch4Ss261.jpg" />
主介面的 Settings 按鈕,可以用來設定 VirtualBox 及 ADB 路徑等資訊。點擊 Add 按鈕,用 Genymotion 帳號登入後,會顯示可用的 Android 虛擬裝置:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6D/91/wKioL1VmuK-iXVjpAAFn3x5i2sQ181.jpg" title="2.png" alt="wKioL1VmuK-iXVjpAAFn3x5i2sQ181.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6D/95/wKiom1Vmtzvy2oa4AAJolm03dNw552.jpg" title="3.png" alt="wKiom1Vmtzvy2oa4AAJolm03dNw552.jpg" />
找到想要的機型和版本,裝好之後,回到主介面點 Play 按鈕啟動它,要安裝應用,直接把 apk 檔案拖進虛擬機器就可以了:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6D/95/wKiom1Vmt1-zyS2FAAId60gPGU0275.jpg" title="4.png" alt="wKiom1Vmt1-zyS2FAAId60gPGU0275.jpg" />
鍵盤 esc 是虛擬機器的後退鍵,f1 是 menu 鍵。可以看到雖然 Genymotion 底層使用 VirtualBox,但是整個過程中,VirtualBox 一直是幕後英雄,不會露面。
另外,如果安裝了 Genymotion 的 Eclipse 外掛程式,以後就可以在 Eclipse 裡管理和使用虛擬機器了。如果在 Genymotion 裡指定了 ADB 路徑,調試 Android 應用也很方便。
Genymotion 虛擬機器運行於本機,所以本機擁有的內網許可權,虛擬機器也有。
Google 市場 和 ARM 庫
前面說過,新版 Genymotion 移除了 Google 市場。實際上,對 ARM library 的支援也一併移除了:
Both the “Google apps” and the “ARM library support” features are removed.
這樣安裝某些 App 時,會報「INSTALL_FAILED_CPU_ABI_INCOMPATIBLE」錯誤,比如。xda 論壇給出了一個解決方案,經驗證確實好用。
安裝 GApps(含 Google 市場)和 ARM Translation(提供 ARM 支援)的步驟(盡量參考英文原文):
下載 ARM Translation Installer v1.1
將下載回來的zip檔案(不要解壓) 直接拖放進去虛擬機器裡進行安裝,完成後讓虛擬機器「關機」重開,不要直接關閉視窗
下載對應系統版本的 Google Apps,推薦下載 4.3,4.4可能有bug
同樣將zip檔案不要解壓拖放到虛擬機器進行安裝,同樣重啟虛擬機器
成功後 Google Play 市場和其他 Google App 都會出現了
這時你再安裝或其他應用就不會再出現錯誤了
這樣,Google Play 和其他 Google App 都有了;再安裝等應用也不會報錯了。
使用 Mac 的同學請注意
Genymotion 依賴的 Virtualbox 虛擬機器,和 Mac 系統下另一個著名的虛擬機器軟體「Parallels Desktop」沒辦法同時使用。Parallels Desktop 官方說無解:
No workaround is available. Please try not to use Parallels Desktop and Virtual Box at the same time
所以每次使用 Genymotion,必須先關掉 Parallels Desktop;同樣,要使用 Parallels Desktop,也得關閉 Genymotion。
問題是:關閉 Genymotion,Virtualbox 某些進程並不會自動結束。所以我們要手動結束 Virtualbox 所有進程,才能正常運行 Parallels Desktop。我寫了一個「Kill Virtualbox」的 Alfred Workflow 專門幹這事,其實就一行:
update: 升級到 2.0.2 之後,直接關閉 Genymotion 可以同時退出所有 VirtualBox 進程,不需要上面那麼複雜了。
最後跟大家說一下,不要在Android模擬器裡面運行,因為存在封號危險:
兩種模擬器都會被封,一般提示“被舉報”或“嚴重違反相關協議”:
1、Virtualbox + Android x86、Genymotion和國內各種山寨版;
2、Bluestacks。
如有問題,可以加我私人號交流:wanghj29
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/6D/95/wKiom1Vmt8WiHzm7AAGsh5KPdWM018.jpg" title="QQ圖片20150515142627.jpg" alt="wKiom1Vmt8WiHzm7AAGsh5KPdWM018.jpg" />
Android 最好用的模擬器 Genymotion