NDK:Razr i需要x86二进制文件吗?

时间:2013-05-14 00:29:37

标签: android android-ndk

据我所知,Razr i目前是唯一一款基于英特尔的智能手机。

我们的应用程序使用NDK包含的C ++库。现在我想知道是否需要添加x86支持才能让这个应用程序在Razr i上运行。

如果未在Application.mk中设置“APP_ABI”(默认为“armeabi”),则Play商店会告诉我,对于该apk,支持2635个设备,而不支持282个设备。大多数不受支持的是平板电脑,我们的应用需要GPS。但是Razr i没有列出。

阅读http://software.intel.com/en-us/articles/google-play-supports-cpu-architecture-filtering-for-multiple-apk我偶然发现了这句话: “许多x86 ABI设备也可以运行ARMv7和ARMv5TE二进制文件。” 真?所以可能没有必要为所有设备膨胀apk或每个版本管理2个apk?

有人可以告诉我Razr i是否属实?

1 个答案:

答案 0 :(得分:2)

这个部分有两个部分

  1. Razr我使用称为二进制翻译的概念即Houdini来支持ARM二进制文件。因此,ARM指令即时转换为x86,您的应用程序运行没有任何麻烦。但是,转换产生的开销略有增加,但不足以让性能下降。
  2. 最佳路线是将您的磁带库的端口设置为x86,因为这意味着您将获得x86架构的最大容量。
  3. 许多应用程序就像在Razr I上运行一样,实际上没有指定支持x86。因此,99%的可能性是你的应用程序可能只适用于Razr I,实际上没有相关的x86库。