我应该选择x86_64进行测试而不是虚拟设备系统映像的“推荐”x86吗?

时间:2017-11-23 07:42:58

标签: android android-studio-3.0

我对Android编程完全陌生。我在桌面上使用Haswell处理器在Kubuntu Xenial 64位上运行Android Studio 3.0.1。

我正在配置虚拟设备。我正在考虑与我拥有的物理Android设备相对应。但是,我注意到x86图像放在“推荐”窗格中:

enter image description here

与相同API版本和目标的x86_64图像进行比较:

enter image description here

https://developer.android.com/studio/run/managing-avds.html#createavd的第4页似乎表明建议使用x86图像,因为它们“在模拟器中运行速度最快。”

我的一些旧设备是x86,但较新的设备是x86_64。我应该相应地选择x86_64,虽然它不在“推荐”窗格中吗?

将来我在Google Play商店发布APK时,这会有所不同吗?

1 个答案:

答案 0 :(得分:5)

与此answer相关的

默认情况下,所有32位应用程序在64位处理器上运行时没有任何故障,但可能比调整为在64位处理器上运行的应用程序运行速度慢。

并根据此article

  

Google最近发布了x86 64位Android 5.0模拟器   图像,开发人员可以为英特尔凌动创建64位应用程序   基于处理器的设备。

Android 32位与64位

  

目前有许多64位平台,包括Solaris,AIX *,HP-UX *,Linux *,   OS X *,BSD和IBM z / OS *使用LP64模型。由于Android是基于   在Linux内核上,Android 64位平台也使用LP64模型。

     

Intel 64位CPU具有32位兼容模式。而32位   应用程序将在64位处理器上运行,使用64位进行编译   优化编译器允许他们利用架构   64位环境的好处

采用基于英特尔凌动处理器平台的64位技术的Android现在可以帮助开发人员优化他们的应用程序。构建64位的Android应用程序就像构建传统的32位Android应用程序一样简单。您现在可以使用官方的Android 64位模拟器来运行和调试64位应用程序。

也许这篇文章可以帮助您理解这个系统图像之间的区别。

<强>更新

Google现在鼓励您使用x86模拟器,就像您在此图片中看到的那样

enter image description here

不同之处在于,在使用x86映像时,它现在在正确的条件下使用快速,硬件加速的虚拟化(HAXM),因此感觉不再存在胖中间层了。