2013-05-14 31 views
2

据我所知,Razr i是目前唯一一款基于Intel的智能手机。NDK:Razr i需要x86二进制文件吗?

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

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

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

有人可以告诉我,对于Razr我是否属实?

回答

2

有2个环节进行

  1. Razr手机我用了一个名为二进制翻译,即胡迪尼概念支持ARM二进制文件。因此,ARM指令即时转换为x86,您的应用程序无任何麻烦地运行。但是,转换的开销很小,但却不足以看到性能下降。
  2. 最好的方法是将你的库的一个端口设置为x86,因为这意味着你可以从x86架构中获得最大的汁液。

许多应用程序的运行方式与Razr I类似,实际上并未指定支持x86。所以99%的机会是你的应用程序可能只是在Razr I上工作,实际上没有相关的x86库。