我正在使用jQuery Mobile,Phonegap和Google地图的jQuery插件开发Android应用程序。模拟器加载网页所需的时间太长,使我的代码测试成为一项痛苦的操作。我在虚拟机上安装了Android x86,并将其链接到Eclipse以调试我的应用程序。
这个解决方案比模拟器更快,但问题是我的应用程序总是崩溃,这在模拟器中并非如此。这让我有疑问:虚拟机上的Android x86是模拟器的稳定替代品吗?
答案 0 :(得分:4)
根据我的经验,答案肯定是是。
与您描述的情况不同,我的应用程序永远不会在Android-x86 VM上崩溃,而且自SDK的模拟器doesn't support microphone input以来,它实际上是测试我的应用程序的唯一方法,而无需购买{的真实设备Android的{3}}。
另外,正如您所指出的,它运行 很多 更快。与Google声称的“接近本机速度”相反,Android的SDK运行速度比Android-x86慢得多,而且肯定比真正的手机或平板电脑慢。
在Android-x86 VM上运行应用程序崩溃的事实实际上可能是一件好事:有机会在each variant中检查使应用程序更加健壮的方法(你知道,有很多类型)那里的设备。)
unforeseeable circumstances的唯一缺点是它仅适用于ICS(Android 4.0.4),这意味着您无法在Jelly Bean(Android 4.1.x)中测试您的应用程序。这可以通过构建您自己的Android-x86 - VirtualBox来解决。
答案 1 :(得分:1)
许多虚拟化软件和系统依赖于CPU的硬件虚拟化功能(VT等),但即使没有它,VirtualBox也能很好地(快速)运行Android x86(eeepc iso)。有明显的局限性,但请记住,任何模拟器都只能到目前为止。
如果您的CPU不支持硬件虚拟化,那么它是一个非常好的选择。
答案 2 :(得分:0)
谷歌的Android SDK仿真器自版本17以来就已经生效。
Google在其ADT版本-17 changelog
中表示其中一项新功能是大幅更新 到Android模拟器 - 英特尔对AOSP的贡献意味着 现在,仿真器在Windows和Mac OS X上以接近原生的速度运行。
因此,如果您使用最新版本的sdktools和模拟器,则不应该看到运行应用程序的速度存在巨大差异。