NDK,JNI使用

下载NDK

解压后,设置javah路径,用于生成.h头文件

设置环境变量:Path:  C:\Program Files\Java\jdk1.8.0_101\bin; (JDK地址)

Android studio集成javah命令

设置External Tools,添加Javah

 

使用JNI

注册 

static {
System.loadLibrary("JniTest"); //加载so文件
}
public static native String get_String();

生成.h文件,在对应.java上右键选择 External Tools->javah

配置可以使用NDK gradle.properties文件添加
android.useDeprecatedNdk=true
设置NDK路径: local.properties文件添加
ndk.dir=C\:\\Users\\Administrator\\ndk

生成so文件 在build.gradle文件defaultConfig 节点添加
ndk{
moduleName = "JniTest" //需要调用的so文件名
}
在c里面实现方法
JNIEXPORT jstring JNICALL Java_com_example_administrator_work_MainActivity_get_1String
(JNIEnv *env, jclass obj){
return (*env).NewStringUTF("this is my library");
}

 添加so文件

直接复制文件到src/main/jniLibs/目录下,没有就创建

在build.gradle(model)中的 android {节点 添加:

sourceSets {
main {
jniLibs.srcDirs = ['Libs']
}
}

posted on 2017-02-28 14:50  yaolunhui  阅读(91)  评论(0编辑  收藏  举报

导航