2013-05-14 30 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庫。