android studio模擬器慢




為什麼Android模擬器這麼慢? 我們如何加快Android模擬器的速度? (20)

我在x86 Windows XP Professional機器上有一個2.67 GHz Celeron處理器和1.21 GB RAM。

我的理解是Android Emulator應該在這樣的機器上相當快地啟動,但對我來說,它不會。 我已經按照設置IDE,SDK,JDK等的所有說明進行操作,並且在快速啟動模擬器方面取得了一些成功,但這種情況非常罕見。 如果可能的話,我怎樣才能解決這個問題?

即使它啟動並加載主屏幕,它也非常緩慢。 我在3.5版 (Galileo)和3.4版 (Ganymede)中嘗試過Eclipse IDE


使用Intel x86仿真器加速器

首先,安裝Intel x86仿真器加速器(HAXM)。 這可以直接從英特爾下載或使用Android SDK Manager下載。 在SDK Manager中,它位於Extras下。

在我使用的Android Studio版本(0.8.9)中,Android SDK Manager下載了HAXM,但實際上並沒有運行安裝程序(我假設這將在以後的版本中修復)。 要運行已安裝的我必須轉到C:\ Program Files(x86)\ Android \ android-studio \ sdk \ extras \ intel \ Hardware_Accelerated_Execution_Manager並手動啟動intelhaxm.exe。

HAXM與英特爾設備配合使用,因此創建了一個帶有英特爾CPU的新仿真器。

使用Intel Atom x86創建新的AVD

這大大改善了一些事情,但模擬器仍然感覺有些遲鈍。 最後一步是在Android虛擬設備管理器(AVD)中選擇使用主機GPU。

在這些更改之後,Android Emulator在5-10秒內啟動並且運行時沒有任何明顯的延遲。 請注意,這些功能與硬件有關(CPU / GPU),可能無法在某些系統上運行。


Android SDK rev。 17支持使用AMD和Intel虛擬化技術的虛擬機加速。

此功能可以大大提高仿真器的性能!

有關更多詳細信息,請參閱Android模擬器文檔中的以下部分: 配置虛擬機加速

不要忘記為您的操作系統安裝適當的驅動程序:

安裝驅動程序並下載Android X86系統映像後(如文檔中所述),您應該能夠使用x86映像創建新的AVD:

例如:

  • 目標:英特爾凌動x86系統映像 - API級別10
  • CPU / ABI:Intel Atom(x86)

Eclipse(舊版)Eclipse中包含的模擬器非常慢。

最近的模擬器比2010年更快。更新SDK / IDE。

就個人而言,我使用真正的手機進行測試。 它更快,測試更真實。 但是如果你想在很多不同的Android版本上測試你的應用程序並且不想購買幾部手機,你將不得不經常使用模擬器。



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

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

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

這個模擬器快速響應。

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


重要說明 :請首先參閱有關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系統映像Intel硬件加速執行管理器驅動程序 。 請看下圖:

  • 通過運行“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啟用此功能。 請參閱啟用Intel VT(虛擬化技術)中有關如何執行此操作的說明。

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

  • 或者對於新的SDK,


嘗試使用genymotion.com for Android Studio。 熾熱快!只需要一次安裝。沒有更多的AVD疼痛。


從Android SDK Tools的第17版開始,模擬器可以使用圖形加速和CPU提供的擴展來提高效率。 先決條件和完整配置以及用戶註釋位於:

http://developer.android.com/guide/developing/devices/emulator.html#acceleration

要啟用GPU備用,請從命令行運行仿真器或將“-gpu on”添加到AVD配置中的其他仿真器命令行選項。

emulator -avd <avd_name> -gpu on

要使用CPU機器擴展,必須安裝驅動程序(請注意,因為它可能與現有的VirtualBoxVMware驅動程序衝突)。 安裝完成後,只要您使用基於x86的AVD,它就會自動使用。


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

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

或者在Unix(Mac或Linux版本)上:

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

我注意到如果沒有連接Dalvik Debug Monitor Server(DDMS),模擬器的啟動速度會快得多。 因此,如果從Virtual Device Manager“SDK Setup.exe”啟動模擬器並且Eclipse未啟動,則模擬器的工作速度會更快。

如果你從Eclipse啟動模擬器:DDMS就在那裡,所以有時候模擬器非常慢,但有時它會更快。


模擬器似乎在空閒時放慢速度。 通過快速將鼠標放在側面的鍵上並觀察點亮響應,可以明顯看出這一點。 作為一種解決方法,我在啟動模擬器時將-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十倍。


當前(2011年5月)模擬器的版本很慢,特別是對於Android 3.0(Honeycomb),主要是因為模擬器不支持硬件GL - 這意味著GL代碼被轉換為軟件(實際上是ARM軟件)然後獲得在QEMU軟件模擬。 這很瘋狂。 他們正在解決這個問題並將其部分解決,但沒有任何類型的發布質量。

查看視頻Google I / O 2011:Android開發工具 ,了解它的實際效果 - 跳轉到大約44分鐘。


英特爾於2012年5月15日發布了ICS仿真器的推薦安裝說明 。這對我有用。 模擬器現在很快,UI很流暢。

上半部分說明已經足夠詳細,因此我假設您可以使用Android SDK管理器以及Intel HAXM安裝Intel x86 Atom系統映像。

現在確保設置其他所有內容,以便您可以享受高性能的模擬器:

然後開始吧:

sudo kextload -b com.intel.kext.intelhaxm (mac)

如果HAXM工作正常,您可能會在啟動模擬器時看到此消息:

HAX正在運行,模擬器以快速virt模式運行

否則您可能會看到此錯誤:

HAX無法正常工作,仿真器在仿真模式仿真器中運行:
無法打開hax模塊

  • 使用GPU模擬。 在撰寫本文時,使用GPU仿真時無法使用“快照”選項。 確保GPU仿真設置為“是”。

  • 將設備內存設置為1024 MB或更多 ,但不超過Intel HAXM設置。 我每台設備使用1024 MB,HAXM使用2048。

保存後請務必仔細檢查設置! 模擬器對於它允許您設置的內容非常挑剔,它將在不告訴您的情況下還原配置。

使用這些設置,軟件鍵盤不再出現,屏幕後退,菜單和最近的鍵也不再出現。 這似乎是當前ICS Intel x86系統映像的限制。 您需要使用鍵盤快捷鍵

在Mac OS上,您需要按住fn + control才能使F1 - F12鍵正常工作。 可以使用控制+箭頭鍵執行向上/向下/向左/向右翻頁。


試試Android x86 。 它比谷歌Android模擬器快得多。 跟著這些步驟:

  1. 安裝VirtualBox
  2. 下載所需的ISO文件
  3. 創建一個虛擬機,如Linux 2.6 /其他Linux,512 MB RAM,HD 2 GB。 網絡:PCnet-Fast III,連接到NAT 。 您也可以使用橋接適配器,但您的環境中需要DHCP服務器。
  4. 在模擬器上安裝Android x86,運行它。
  5. Alt + F1 ,鍵入netcfg ,記住IP地址,按Alt + F7
  6. 在Windows XP系統上運行cmd,將目錄更改為Android工具目錄,鍵入adb connect <virtual_machine_IP>
  7. 啟動Eclipse,打開ADT插件,找到設備,享受吧!

這是我注意到沒人提到的。

將所有可用的處理器分配給模擬器

這是你可以嘗試的。 它確實為我加速了模擬器,特別是在加載時。 我注意到模擬器只使用可用CPU的單核。 我將其設置為使用所有可用的處理器。

我正在使用Windows 7。

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


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


好吧,既然有人建議Android x86作為替代測試模擬器,我也會提出我最喜歡的。這可能不是每個人的替代品,但對我來說它是完美的!

使用Bluestacks播放器。它運行Android 2.3.4並且非常流暢和快速。有時甚至比普通設備更快。唯一的缺點是,您可以只在一個屏幕尺寸上測試API級別10上的應用程序,但它非常適合測試它是否正常工作。與只需連接播放器adb運行

adb connect 127.0.0.1 

編譯後,它會立即安裝。考慮到我有相當普通的計算機硬件(具有4 GB RAM的雙核),這是非常令人印象深刻的。


我注意到我的模擬器(Eclipse插件)因我的Nvidia顯卡抗鋸齒設置而顯著減慢。從圖形菜單中刪除2x抗鋸齒並將其更改為應用程序控制使其響應更快。它仍然很慢,但比以前更好。


要減少仿真器啟動時間,需要在啟動仿真器之前檢查“禁用啟動動畫”。請參閱Android文檔

如果您不知道,則每次運行/調試應用程序時都不需要關閉模擬器。如果您在打開時單擊運行/調試,您的APK文件將上傳到模擬器並立即啟動。仿真器只在第一次啟動時才會花費很長時間。

以下是加速Android模擬器的一些提示:如何將Android模擬器加速高達400%







qemu