使用NDK有什么可携带性?

时间:2010-11-07 06:06:18

标签: java android android-ndk

我需要在大的long [] s上执行的一些操作非常快。我能看到的唯一选择是使用Android NDK。任何人都可以根据哪些设备可以使用该应用程序以及维护我的应用程序的含义,总结NDK对我的应用程序的作用?

我看到你需要指定你想要编译C代码的架构,比如ARM和Intel。当Android的新架构出现时会发生什么?每次出现新架构时,我都必须更新我的应用程序吗?

1 个答案:

答案 0 :(得分:7)

  

任何人都可以根据哪些设备可以使用该应用来概述NDK对我的应用的影响

只有在您拥有NDK .so的CPU上运行的设备才能运行您的应用。

  

以及维护我的应用程序有什么影响?

在多个CPU架构上进行测试可能需要每个架构的硬件。我说“可能”因为......

  

Android新体系结构出现后会发生什么?

......我们真的不知道。除了添加ARM7支持外,NDK还没有改变其目标。

目前,我可以想到两个主要的Android非ARM平台:

  • 英特尔凌动,被Google TV设备使用。在撰写本文时,NDK不支持此功能。但是,您也无法为Google TV发送应用。因此,可能会在我们编写Google TV应用时更新NDK。
  • MIPS。在撰写本文时,NDK不支持此功能。我不知道这方面的计划是什么。

可以想象,仿真器似乎可以模拟这些CPU。毕竟,现有的Android模拟器模拟ARM5。但是,除非发生这种情况,否则您需要为要支持的每个体系结构提供测试硬件。

  

每次出现新架构时,我都必须更新我的应用程序吗?

仅当您要支持新架构时。除非有足够数量的设备可以访问您的应用程序,否则任何新架构都不会非常重要。 “临界质量”可能来自一般设备销售,或者可能是因为您达成OEM协议以将您的应用捆绑在某人的设备上。

  

代码虽然简单,但适用于所有拱门。

注意你的结尾。