2、新建AS工程
3、编写JNI的java类
public class JNIMethod {
static {
System.loadLibrary("myjnitools"); //在build gradle中配置
}
public native String getString();
}
4、生成.h
(1)在Terminal中 输入 cd app\src\main\java>
进入文件目录
再输入 javah -jni packagename.methodname 生成.h文件
(2)在main下新建JNI文件夹并将生成的.h文件复制到考至该文件下
(3)新建xx.c文件 并对.h做实现
5、gradle.propoerties 文件修改
末尾添加:android.useDeprecatedNdk=true
6、build gradle 文件修改
defaultConfig {
...
ndk{
moduleName "myjnitools" //生成的so名字
abiFilters "armeabi", "armeabi-v7a", "x86" //输出指定三种abi体系结构下的so库。目前可有可无。
}
}
7、编译 结束
编译出错:
Execution failed for task ':app:compileDebugNdk'.
原因:NDK的一个bug
解决办法:
在jni文件中添加空的util.c文件