Android本机代码如何针对多种处理器类型?

Jum*_*ump 5 performance android native-code android-ndk

据我所知,Android上的本机代码是直接与特定设备的处理器一起工作的代码.因此,如果我想利用某个处理器,我会使用本机代码.

但是,如果我想创建一个包含本机代码的应用程序,但是针对多个处理器,会发生什么?

我是否必须制作多个应用程序,每个架构一个?或者有没有办法将多个版本的本机代码放在一个应用程序中,选择与其运行的设备的处理器匹配的应用程序?

Tot*_*oro 0

这通常称为交叉编译。也就是说,您需要一个编译器来为 Y 编译 X(您当前的代码)。它为 CPU Y 生成代码,而不是通常情况下的 X。

  • @Kevin - 不,这个答案是正确的,尽管有点简短。交叉编译是“必要的”每目标编译步骤的“实用”形式,是从单一来源支持多个本机架构所需的。Android NDK 是一套交叉编译器,允许桌面操作系统针对各种 Android 架构进行交叉编译。 (2认同)