【发布时间】:2015-09-25 17:51:20
【问题描述】:
我的 APK 中有两个 .so 库:
1) LibraryA:仅为 ARM 架构构建,因为我不想将所有代码移植到 x86。这是一项艰巨的任务。
2) LibraryB:为 ARM 和 x86 构建。 ARM libhoudini 模拟器对于英特尔设备来说太慢了,无法以不错的速度运行这个库,所以它必须有一个可以正常工作的 x86 端口。
APK 中的 lib 文件夹如下所示:
../lib/armeabi/LibraryA
../lib/armeabi/LibraryB
../lib/x86/LibraryB(注意:x86 没有 LibraryA)
当我在英特尔设备上安装/运行 APK 时,它默认为 .so 库的 ARM 架构,并忽略 x86 版本的 LibraryB。结果是,它被模拟并且生产速度太慢。不过,在 ARM 设备上一切正常,没有问题。
如何强制 Android 在 Intel 设备上正常工作,以便它模拟 ARM 版本的 LibraryA 并运行 x86 版本的 LibaryB?
为了完整起见,我使用 android-ndk-r10d 来构建。
【问题讨论】:
标签: android android-ndk x86 java-native-interface