為什麼Android模擬器如此緩慢? 我們如何加快Android模擬器?


Answers

重要提示 :請先參考英特爾關於VT的列表 ,以確保您的CPU支持英特爾VT。

HAXM加快了Android模擬器的速度

HAXM代表 - “英特爾硬件加速執行管理器”

目前它僅支持英特爾®VT(英特爾虛擬化技術)。

Android模擬器基於QEMU 。 QEMU和主機系統上的HAXM驅動程序之間的接口設計為與供應商無關。

為HAXM配置Android開發環境的步驟

  1. 更新Eclipse:確保您的Eclipse安裝和ADT插件完全是最新的。

  2. 更新您的Android工具:在每次Eclipse插件更新後,更新您的Android SDK工具非常重要。 為此,啟動Android SDK Manager並更新所有Android SDK組件。 要利用HAXM,您至少必鬚髮布版本17。

  • 下載x86 Atom系統映像英特爾硬件加速執行管理器驅動程序 。 按照下面的圖片:

  • 運行“IntelHaxm.exe”來安裝HAXM驅動程序。 它將位於以下位置之一:

    • C:\Program Files\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    • C:\Users\<user>\adt-bundle-windows-x86_64\sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    如果安裝程序失敗並顯示必須啟用Intel VT的消息,則需要在BIOS啟用此功能。 請參閱有關如何在啟用英特爾VT(虛擬化技術)中執行此操作的說明。

  • 創建一個新的 x86 AVD:按照下面的圖片:

  • 或者對於新的SDK,
Question

我在x86 Windows XP Professional機器上安裝了2.67 GHz Celeron處理器和1.21 GB RAM。

我的理解是, Android模擬器應該在這樣的機器上相當快地啟動,但對我而言,它不會。 我已經遵循了設置IDE,SDK,JDK等的所有說明,並且已經在快速啟動仿真器方面取得了一些成功,但這非常罕見。 如果可能的話,我該如何解決這個問題?

即使它啟動並加載主屏幕,它非常緩慢。 我已經嘗試過版本3.5 (伽利略)和3.4 (Ganymede)中的Eclipse IDE




The older Android versions run a lot faster. When I'm on my netbook, I use Android 1.5 (API level 3). There are a couple of drawbacks, though--your apps need to support the older platforms (obviously), and ndk-gdb requires running Android 2.2 (API level 8) or higher. But regularly testing apps against older platforms is a good idea anyway.




I noticed that the my emulator ( Eclipse plugin) was significantly slowed by my Nvidia graphics card anti-aliasing settings. Removing 2x anti aliasing from the graphics menu and changing it to application controlled made it more responsive. It is still slow, but better than it used to be.




嘗試禁用您的防病毒。 也許它會讓模擬器更快一點。




您可以使用以下命令創建emulator.bat以啟動模擬器。 它會開始更快。

emulator.exe -cpu-delay 0 -no-boot-anim @<avd name>

或者在Unix上(Mac或Linux):

emulator -cpu-delay 0 -no-boot-anim @<avd name>



這是我注意到的,沒有人提到它。

將所有可用的處理器分配給仿真器

這是你可以嘗試的。 它加快了我的模擬器速度,尤其是在加載時。 我注意到仿真器僅使用可用CPU的單個內核。 我將它設置為使用所有可用的處理器。

我正在使用Windows 7。

當Android模擬器啟動時,打開任務管理器,在Process標籤下查找“emulator-arm.exe”或“emulator-arm.exe * 32”...右鍵單擊它,選擇Processor Affinity和根據需要將盡可能多的處理器分配給仿真器。




為此添加更多信息。

我最近將Ubuntu安裝升級到了Ubuntu 10.04 LTS(Lucid Lynx),後者又將我的Java版本更新為:

Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

現在模擬器(雖然需要一段時間才能開始)似乎比以前運行得更快。

人們可能需要升級他們的JVM。




模擬器的啟動非常慢。 好處是你只需要啟動一次仿真器。 如果模擬器已經在運行,並且您再次運行您的應用程序,則模擬器會相對快速地重新安裝應用程序。 當然,如果你想知道它在手機上的運行速度有多快,最好在真實的手機上進行測試。




I had intermittent slow emulator (SDK v8.0) load times, up to three minutes on Intel Core i7 920 2.67 GHz CPU running on Xubuntu 10.04 VirtualBox 3.2.12 guest with Eclipse (3.6.1) loaded. I changed the VirtualBox guest memory from 1024 MB to 2048 MB and from that point on, I never experienced the slowness again (load times consistent at 33 seconds, CPU load consistent at 20%). Both Eclipse and the emulator are memory hogs.










目前(2011年5月)版本的仿真器速度較慢,特別是Android 3.0(Honeycomb),主要是因為仿真器不支持硬件GL--這意味著GL代碼被轉換為軟件(實際上是ARM軟件)在QEMU軟件模擬。 這太瘋狂了 - 很慢。 他們正在研究這個問題,並且部分解決了這個問題,但是沒有任何發布質量。

查看Google I / O 2011視頻:Android開發工具以查看它的行動 - 跳到大約44分鐘。




更新:最新版本的Android studio(2.x)對捆綁仿真器進行了重大改進。 它具有響應能力,並具有一大堆功能。

對於那些仍然感興趣的人:嘗試使用Genymotion 。 您可以在註冊後下載適用於Windows / Mac OS X / Linux的版本。 Eclipse的插件也可用:

插件的安裝可以通過啟動Eclipse並轉到“幫助/安裝新軟件”菜單,然後使用以下URL添加新的更新站點: http://plugins.genymotion.com/eclipse : http://plugins.genymotion.com/eclipse 。 按照Eclipse指示的步驟操作。

這個模擬器速度快,響應速度快。

GenyMotion允許您控制設備的各種傳感器,包括電池電量,信號強度和GPS。 最新版本現在還包含相機工具。




模擬器似乎在閒置時放慢速度。 快速將鼠標懸停在側面的鑰匙上並觀察亮起的響應,就可以看出這一點。 作為一種解決方法,我在啟動模擬器時將-icount auto傳遞給QEMU 。 您可以創建一個名為my_avd.bat的批處理文件為您執行此操作:

emulator @my_avd -no-boot-anim -qemu -icount auto
  • @my_avd - 啟動一個名為'my_avd'的虛擬設備
  • -no-boot-anim - 禁用動畫以加快啟動
  • -qemu args... - 將參數傳遞給qemu
  • -icount [N|auto] - 啟用每條指令具有2 ^ N個時鐘滴答的虛擬指令計數器

這使動畫黃油順利加速adb install十倍。




開發了一段時間後,我的模擬器變得非常慢。 我選擇了擦除用戶數據 ,而且好得多。 我猜測,加載已部署的每個APK文件需要一些時間。




Related