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

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


当前回答

启用GPU硬件加速(除了Intel的HAXM),如果你使用API 15 v3或更新版本和SDK Tools v17+。模拟器的图形加速利用开发计算机的图形硬件,特别是图形处理单元(GPU),使屏幕绘制速度更快。这大大提高了速度。

要在模拟器上启用默认启用的图形加速:在创建AVD时,在“硬件”部分单击“新建”,选择“GPU仿真”并将值设置为“是”。

要只在运行时启用加速:在启动模拟器时使用-gpu标志,如下所示:

emulator -avd <avd_name> -gpu on

来源:谷歌的使用模拟器教程。

其他回答

启用GPU硬件加速(除了Intel的HAXM),如果你使用API 15 v3或更新版本和SDK Tools v17+。模拟器的图形加速利用开发计算机的图形硬件,特别是图形处理单元(GPU),使屏幕绘制速度更快。这大大提高了速度。

要在模拟器上启用默认启用的图形加速:在创建AVD时,在“硬件”部分单击“新建”,选择“GPU仿真”并将值设置为“是”。

要只在运行时启用加速:在启动模拟器时使用-gpu标志,如下所示:

emulator -avd <avd_name> -gpu on

来源:谷歌的使用模拟器教程。

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

在今年谷歌I/O(2011)上,谷歌演示了一个更快的模拟器。问题不在于ARM和x86之间的字节码,而在于QEMU执行的软件渲染。我认为它们绕过QEMU的渲染,直接将渲染发送到X服务器。他们展示了一款具有出色性能和fps的汽车游戏。

我想知道什么时候开发者可以使用……

我最近从core 2 @ 2.5, 3gb内存换成了i7 @ 1.73, 8gb内存(两个系统都运行Ubuntu 10.10),现在模拟器的运行速度至少快了一倍。投入更多硬件当然会有所帮助。