1. 还是以"02_两个数相加"为例,你会发现这个jni程序只能在ARM处理器下运行,如下:
如果我们让上面的程序运行在x86模拟器上,处理平台不对应,报如下错误:
03-29 03:09:25.378: E/AndroidRuntime(1379): at dalvik.system.NativeStart.main(Native Method)
03-29 03:09:25.378: E/AndroidRuntime(1379): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load myadd: findLibrary returned null
那该怎么办呢?
2. 步骤如下:
(1)在工程目录下,jni文件夹下创建一个Application.mk文件,如下:
里面的内容该怎么写呢?
在android-ndk-r9cdocs查看文档APPLICATION-MK.html,如下:
打开APPLICATION-MK.html,如下:
(2)在该文件中加:
APP_ABI := all 就可以生成,所有平台对应的.so文件
APP_ABI := armeabi armeabi -v7a x86 mips
如下: