1

在 Android 中使用 JNI 时,是否需要编译 C 代码以符合所有不同类型的 ARM 架构?例如,如果我为 armeabi 编译 ffmpeg,我可以在所有 Android 设备上使用它,还是需要将它编译到不同的目标,例如 armeabi-v7a?

4

1 回答 1

3

APP_ABI := armeabi armeabi-v7a x86 

在您的 Application.mk 中将创建 3 个与您的 apk 文件捆绑在一起的 .so 文件。这应该涵盖所有相关的 android 设备。我们的开发人员不需要额外的工作。

至于您的问题:如果您为 armeabi 编译,您的应用程序将适用于 armeabi 和 armeabi-v7a。那是因为后者是 armeabi 的扩展。您可以在 ndk.dir/docs/CPU-ARCH-ABIS.html 中找到详细说明。

于 2012-05-08T17:52:19.607 回答