我的笔记本电脑支持硬件虚拟化 (AMD SVM),我知道:

  • QEMU可以通过KVM利用硬件虚拟化;
  • Android 模拟器很大程度上基于 QEMU

自然问题如下:我可以将两者(Android + KVM)结合起来以提高模拟器的性能吗?

有帮助吗?

解决方案

是的你可以。只需在 Android SDK 中下载适当的 Intel Atom CPU 软件包,然后让您的 AVD 使用 Intel Atom CPU 架构。Android模拟器甚至可以使用主机GPU。这是有关如何执行此操作的链接:

http://developer.android.com/tools/devices/emulator.html#acceleration

其他提示

您可以尝试使用 AndroidVM - http://androvm.org/blog/ ...在我的测试中,您还可以拥有硬件 OpenGL 和旋转支持(这有点复杂,但一切都在 AndroidVM 页面上进行了解释)。

根据我的经验,这比 Android SDK 模拟器好得多,至少在 Windows 和 Mac 上是这样。

对于 Linux,您应该能够使用 VirtualBox for Linux 来使用 AndroidVM。由于它主要是 OVA 文件,因此您应该能够根据需要使用其他虚拟化客户端。

有趣的是,这不是模拟 ARM,而是 x86 上的 Android...这有优点也有缺点,但如果你可以在虚拟机上进行各种初始测试,那么绝对有助于不必购买大量设备,因为 Android 4.1 通常不会被 ARM 和 x86 手机和平板电脑的制造商进行过多修改,等(国际海事组织)。

你可以运行 安卓-x86 在带有 KVM 的 QEMU 中(甚至在 VirtualBox 中)。我不确定设置开发有多容易,但它应该运行得更快一些。此外,英特尔还 致力于 在他们的 x86 芯片上安装 Android,所以这在未来有望变得更容易。

更新:我设法让它在 VirtualBox 中工作,除了一些网站使网络浏览器崩溃。由于我正在制作一个网络应用程序,所以这没有帮助。不过它比标准 Android 模拟器要快得多,

与您所追求的答案没有密切关系,但是

  • 使用 Run 当您在界面上工作时,或者尽可能在编码时(与调试相比,速度要快得多,甚至快 10 倍)
  • 尝试最小化 Debug 运行,学会完美编码,所以少用 Debug。
  • 您可能已经知道,您不需要为每个运行会话关闭模拟器,因此请将其保持打开状态。
  • 使用一小时后重新启动 Eclipse,但保持模拟器打开。重新启动 Eclipse 比模拟器更快。
  • 将 Eclipse 设置为 记住上次运行的项目, ,因此只需一键即可完成启动

针对 x86 的 Google TV 模拟器 支持KVM模式虚拟化.

ARM还没有做到这一点。我相信目前正在进行中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top