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

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

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


当前回答

为了减少模拟器启动时间,您需要在启动模拟器之前检查“禁用启动动画”。请参阅Android文档。

如果您不知道,则无需在每次运行/调试应用程序时关闭模拟器。如果您在已经打开的情况下单击run/debug,则APK文件将被上传到模拟器并立即启动。Emulator只有在第一次启动时才会花费很长的时间。

以下是一些加快Android模拟器速度的提示:如何将Android模拟器的速度提高400%。

其他回答

我只是使用了默认的Android 3.1,速度很慢,但当我意识到我的代码与Android 2.3.3兼容时,我就改用了它。它大约快50%,而且模拟器看起来更像我的手机,并且有一个永久显示的键盘,这样更容易使用。

您可以尝试我们的新Android虚拟机Leapdroid,它与原始的Android模拟器完全兼容。由于它使用虚拟化技术而不是仿真,因此它提供了相当高的原生速度。此外,我们使用了一种名为LeapGL的新OpenGL技术,它以原生速度执行OpenGL图形。与其他vm相比,我们的vm具有最好的性能。

http://www.leapdroid.com

源代码:https://github.com/leapdroid

Leapdroid与Eclipse和AndroidStudio完全兼容,因为它使用相同的adb端口。

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

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

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

将当前的Android Studio更新为Android Studio 2.0,并更新系统图像。

Android Studio 2.0模拟器的运行速度比Android之前的模拟器快3倍,通过ADB增强,您现在可以将应用程序和数据推送到模拟器,速度比推送到物理设备快10倍。与物理设备一样,官方Android模拟器也内置了Google Play Services,因此您可以测试更多的API功能。最后,新模拟器具有丰富的新功能来管理通话、电池、网络、GPS等。

加快Android模拟器和应用程序测试的好方法是将Android Studio安装或升级到Android Studio 2.0版本,然后转到应用程序打开设置/首选项,转到构建、执行和部署→ 即时运行。单击启用即时运行。之后,这将确保您的项目有正确的grade插件来使用Instant Run。

即时运行将如下所示

然而,Android Studio现在正在预览中,您可以立即尝试。