我在x86 Windows XP Professional机器上有2.67 GHz赛扬处理器和1.21 GB RAM。

我的理解是,Android Emulator应该在这样的机器上启动得相当快,但对我来说,它没有。我遵循了设置IDE、SDK、JDK等的所有说明,并在快速启动仿真器方面取得了一些成功,但这非常罕见。如果可能的话,我如何解决这个问题?

即使它启动并加载主屏幕,它也非常缓慢。我已经在3.5版(伽利略)和3.4版(木卫三)中尝试过Eclipse IDE。


当前回答

使用Intel x86 Emulator加速器

首先,安装Intel x86 Emulator Accelerator(HAXM)。这可以直接从Intel或使用Android SDK Manager下载。在SDK管理器中,它位于Extras下。

在我使用的AndroidStudio版本(0.8.9)中,AndroidSDKManager下载HAXM,但实际上不运行安装程序(我认为这将在以后的版本中得到修复)。要运行安装程序,我必须转到C:\Program Files(x86)\Android\Android studio\sdk\pextras\intel\Hardware_Accelerated_Execution_Manager并手动启动intelhaxm.exe。

HAXM可与Intel设备配合使用,因此创建了一个带有Intel CPU的新Emulator。

使用Intel Atom x86创建新的AVD

这大大改善了性能,但模拟器仍然感觉有点迟钝。最后一步是选择在Android虚拟设备管理器(AVD)中使用主机GPU。

在这些更改之后,Android Emulator在5-10秒内启动并运行,没有任何明显的延迟。请注意,这些功能依赖于硬件(CPU/GPU),在某些系统上可能无法工作。

其他回答

我注意到我的模拟器(Eclipse插件)被我的Nvidia图形卡抗锯齿设置大大减慢了速度。从图形菜单中删除2倍的抗锯齿功能,并将其更改为应用程序控制,使其响应速度更快。它仍然很慢,但比过去更好。

我有间歇性的缓慢模拟器(SDK v8.0)加载时间,在加载了Eclipse(3.6.1)的Xubuntu 10.04 VirtualBox 3.2.12客户机上运行的Intel Core i7 920 2.67 GHz CPU上长达三分钟。我将VirtualBox客户机内存从1024 MB更改为2048 MB,从那时起,我再也没有体验过这种缓慢(加载时间一致为33秒,CPU负载一致为20%)。Eclipse和模拟器都是内存占用者。

我的解决方案是维索。我得到了两个最好的世界。我不会给我的机器加太多的电,但我也可以在屏幕上看到我真正的Android设备,所以我不必伸手去拿它,把手从键盘上拿下来等等。此外,总有一些功能在模拟器上运行得不太好。

有带广告的免费版本和付费版本,与其他解决方案相比,不会让银行破产。

我只是注意到了一些我无法解释的事情,但嘿,对我来说,这很有效!

无论如何,我是从源代码编译Android的,内置模拟器在几秒钟内启动(我的机器是双核AMD 2.7 GHz),一分钟内,也许在第一次运行时两分钟,系统就启动了。另一方面,使用EclipseADT包会导致半小时的仿真器启动。不可接受的

在这里有效的解决方案(我没有办法在其他机器上测试它,所以如果你想测试并验证):

在您的机器上下载并构建Android SDK。这可能需要一些时间(你知道,整个系统的编译是令人厌烦的)。可在此处找到说明:正在初始化正在下载构建(我将命令更改为“午宴sdk-eng”和“makesdk-j4”;此外,构建提示非常有用,尤其是关于ccache和-jN选项)完成后,运行“android”,SDK管理器将出现。下载工具和所需的平台包。如果找不到命令,请尝试重新运行“”。“build/envsetup.sh”和“午餐sdk-eng”命令来设置路径;它们在退出终端会话后丢失。运行“仿真器”以检查其启动速度。对我来说,它比Eclipse捆绑版快得多。如果这有效,请将Eclipse指向您刚刚编译的SDK。左窗格中的窗口首选项Android->选择SDK位置。它应该是带有“tools”子分区的dir,以及“platforms”子分区中的一些内容。对我来说,它是<source-base-dir>/out/host/linux-x86Apply/OK,如果需要,重新启动Eclipse。如果它没有任何抱怨,运行你的Android应用程序。在我的例子中,模拟器在几秒钟内启动,并在一分钟内完成引导。还有一点延迟,但我完全可以接受。

此外,我同意从快照运行并将状态保存到快照。我的建议只涉及模拟器启动时间。我仍然不知道为什么默认情况下会这么长。无论如何,如果这对你有用,请享受:)

您可以在GoogleI/O 2011:AndroidDevelopmentTools上回顾仿真器问题,开始0:40:20。

模拟器运行缓慢,因为整个Android环境在仿真硬件上运行,指令也在仿真ARM处理器上执行。

主要的瓶颈是渲染,因为它不在任何专用硬件上运行,但实际上是通过软件渲染执行的。减小屏幕大小将大大提高仿真器性能。获得更多/更快的内存不会有帮助。

当时他们已经提到,他们正在开发一种接口,允许仿真器通过主机硬件传输某些指令,因此最终,您将能够利用桌面硬件的原始功能来利用仿真器的性能。