Hello JNI

1,新建MyJNI类,这里的System.loadLibrary(“方法名”)是与C/C++交互的入口。下面的getCLanguageString()方法就是要在c中实现的方法,在java中调用该方法以实现对c/c++的调用。

Hello JNI_第1张图片

2,通过我们配置的方法javah,构建jni文件夹以及com_example_sjw_day0419jnitest_MyJNI.h文件

Hello JNI_第2张图片

3,在工程下的gradle.properties里添加  android.useDeprecatedNdk=true


Hello JNI_第3张图片

4在app下的build.gradle下添加如下代码:(注意:这里的moduleName是我们在myJni.class下System.loadLibrary()里的方法名)


Hello JNI_第4张图片

5,在jni下新建.cpp/.c文件(下图是.c)实现.h文件中的方法(记得导.h文件的包)

Hello JNI_第5张图片

6,在jni下创建Android.mk和Application.mk文件


Hello JNI_第6张图片
Android.mk


Hello JNI_第7张图片
Application.mk

7,右键jni目录实现ndk-build方法,构建.so文件

Hello JNI_第8张图片

8,在MainActivity里调用,完成


Hello JNI_第9张图片

9,运行效果截图


Hello JNI_第10张图片

你可能感兴趣的:(Hello JNI)