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

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

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


当前回答

添加更多RAM并使用SSD驱动器。根据我的经验,Android Studio最好使用SSD驱动器在8到12 GB的RAM上运行。

其他回答

简短回答:因为ARM->x86指令翻译。Emulator的工作方式与虚拟机类似,虚拟机的任务是启动一个完整的操作系统,然后运行测试应用程序。ARM->x86转换可能非常耗时,对您的应用程序来说更少,但对操作系统启动时更为耗时(这与复杂性和涉及的指令数量成正比)。

一些人建议在x86模拟器上运行代码。这意味着不需要加载基于ARM的操作系统,而是加载一个在x86机器上运行速度更快的x86变体,因为不需要ARM->x86转换。然而,这并不是一个完美的解决方案:

使用NDK并带有为ARM编译的本机库(*.so)的Android应用程序将无法在x86仿真器上运行,因此此类程序将无法运行。但是,如果您达到了这一点,并开始处理NDK/本机JNI代码,那么您可能已经对仿真器了解足够了。

英特尔于2012年5月15日发布了ICS仿真器的推荐安装说明。这对我有用。模拟器现在很快,UI也很流畅。

前半部分的说明足够详细,因此我假设您能够使用Android SDK管理器以及Intel HAXM安装Intel x86 Atom System Image。

现在,为了确保其他一切都已设置,您可以享受高性能模拟器:

安装Intel硬件加速执行管理器(HAXM)

然后开始:

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

如果HAXM工作正常,则在启动仿真器时可能会看到以下消息:

HAX正在工作,仿真器以快速虚拟模式运行

否则,您可能会看到以下错误:

HAX不工作,仿真器在仿真模式仿真器中运行:无法打开hax模块

使用GPU仿真。在撰写本文时,当使用GPU仿真时,不能使用快照选项。确保GPU仿真设置为“是”。将设备内存设置为1024 MB或更大,但不能超过Intel HAXM设置。我每个设备使用1024 MB,HAXM使用2048 MB。

保存后始终仔细检查设置!模拟器对它允许您设置的内容非常挑剔,它会在不告诉您的情况下恢复配置。

使用这些设置,软件键盘不再显示,屏幕上的后退键、菜单键和最近的键也不再显示。这似乎是当前ICS Intel x86系统映像的一个限制。您需要使用键盘快捷键。

在Mac OS上,您需要按住fn+控制键,F1-F12键才能工作。可以使用控制+箭头键执行向上/向下/向左/向右翻页。

模拟器速度慢。你真的无能为力,但模拟器还有其他选择。

词源-首选虚拟机安卓模拟器YouWaveWindows Android模拟器一罐豆子安迪

为了让模拟器更快,您可以托管GPU并使用更轻的Android版本(Android 2.3(姜饼))。在Mac上开发会更好。为什么要使用模拟器,BTW?使用真正的手机更有意义。

尝试Android Studio的Genymotion。燃烧得很快!只需要一次安装。不再有AVD疼痛。

我注意到模拟器在一段时间内会变慢。因此,可以删除速度非常慢的仿真器,并在AVD管理器的帮助下创建一个新的仿真器。我试了几次,效果很好。