Android虚拟设备 - Armeabi-v7a vs x86_64

时间:2015-01-03 15:56:21

标签: android intellij-idea

我想制作自己的Android应用程序。我使用的是Ubuntu 64bit和IntelliJ。在虚拟设备配置中,它要求我选择系统映像。所有选项旁边都有Download,这意味着我没有下载任何系统映像。

Lollipop(API级别21)有3个选项,分别是Armeabi-v7a,x86_64和x86。(我使用的是Ubuntu 64位,所以我不应该使用x86吗?)

任何人都可以解释什么是Armeabi-v7a? Armeabi-v7a和x84_64有什么区别?我应该选择什么“版本”(哪一个运行得更快;))?

1 个答案:

答案 0 :(得分:27)

根本区别在于正在模拟的CPU。

  • Armeabi-v71通过电子邮件处理ARM处理器。 (有关ARM选项的更多详细信息,请参阅:this question。)
  • x86_64模拟64位X86处理器。

决定选择哪一项取决于您的目标设备。 ARM处理器更为普遍,因此使用ARM虚拟设备测试应用程序通常是有意义的。

另一个考虑因素是本机代码。如果您的应用包含任何本机代码或包含本机代码的第三方库,那么您选择的虚拟设备非常重要。本机代码被编译为特定于CPU的库(.so文件)。因此,您将使用ARM虚拟设备测试应用程序中的ARM库,并使用X86虚拟设备测试应用程序中的X86库。

最后一个考虑因素是执行速度。 X86虚拟设备将在X86台式机上运行得更快。