Java Native Interface(JNI)是Java語言的本地編程接口,是J2SDK的一部分。在java程序中,我們可以通過JNI實現一些用java語言不便實現的功能
配置javah (或者使用命令行 javah -d ../jni Test)
$JDKPath$\bin\javah.exe
-classpath . -jni -d $ModuleFileDir$\src\main\jni $FileClass$
$ModuleFileDir$\src\main\Java
配置ndk
創建mylib Module
創建類 MyLibTest
/**
* Created by wyb on 2016/12/4.
*/
public class MyLibTest {
static {
System.loadLibrary(“MyLibrary”);
}
public native String get();
}
自動生成com_example_mylib_MyLibTest.h
實現方法
include “com_example_mylib_MyLibTest.h”
JNIEXPORT jstring JNICALL Java_com_example_jnit_MyLibTest_get
(JNIEnv *env, jobject obj){
return (*env)->NewStringUTF(env,”My name is Ouyangshengduo,Hi!”);
}
配置1、
ndk {
moduleName"mylib"
}
配置2、
android.useDeprecatedNdk=true
運行
.so產生位置
然後拷貝到libs下,開始使用
紅色表示需要導入c++依賴庫
創建項目