Android模拟器有点迟钝。对于摩托罗拉Droid和Nexus One等设备,应用程序在实际设备上的运行速度比模拟器快。在测试游戏和视觉效果时,这是一个问题。

如何使模拟器尽可能快地运行?我一直在摆弄它的参数,但还没有发现一个配置显示出明显的改进。


当前回答

更新当前的Android Studio到Android Studio 2.0,并更新系统映像。

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

其他回答

如果你没有一个好的显卡(像我一样),选择一个低分辨率的模拟器(例如:Nexus S)

I think it is because clr virtual machine uses cpu directly without code opcode translation. It may be optimization for clr application or may be windows mobile/window phone 7 started on INTEL proccessor. Android platform based on linux and theoretically you can start android on virtual machine in i686 environment. In this case virtual machines such as vmware could execute some opcodes direcly. But this option will be allowed only if you write on the Java. Because the Java interpret their byte-code or precompile it before execution. see: http://www.taranfx.com/how-to-run-google-android-in-virtualbox-vmware-on-netbooks

我一直在使用英特尔(86)CPU/ABI。我用ARM(armeabi-v7a)创建了另一个模拟器,我发现速度有了很大的提高。我使用的是平台4.1.2 API级别16

我建议让Genymotion转一转。它运行在Oracle的VirtualBox上,在一个中等的系统上可以达到60帧/秒。

下面是我的一个工作室的屏幕截图,运行在低端的2012款MacBook Air上:

如果你看不懂文字,这是一个以56.6帧/秒运行的Nexus 7模拟器。额外的(大!)奖励是谷歌播放和谷歌播放服务与虚拟机打包。

(演示动画的来源可以在这里找到。)

编辑虽然使用英特尔图像可以获得一些性能提升,但使用Genymotion获得的性能要大得多。请看保罗·拉默茨马的回答。

以前的回答

ADT rev 17模拟器支持在Windows和Mac OS x上以虚拟化模式运行x86系统映像,这对性能有显著影响。

ADT rev 17注释: http://android-developers.blogspot.jp/2012/03/updated-sdk-tools-and-adt-revision-17.html

配置虚拟机加速: http://developer.android.com/guide/developing/devices/emulator.html#accel-vm