- 首先下载NDK插件,然后选中app右键打开open module setting,设置NDK路径目录下的ndk-bundle就ok啦!
1、在我们的项目中的gradle.properties文件中加上 android.useDeprecatedNdk = true
2、怎么生成头文件.h文件,首先新建一个写native方法的类:
3、类写好了,然后点击锤子make 一下项目,然后复制 app、build、intermediates、classes下的debug目录路径,打开Terminal输入 cd 复制的debug目录
然后在debug目录下输入:javah -jni 包名+类名(也就是刚才写的NdkTest类路径),回车你就可以在denbug目录下看见.h文件了。
4、接着在main目录下创建jni目录,把刚才生成的头文件.h剪切到jni下,再在jni目录下新建一个.c文件:
把.h文件的方法直接负责到c文件中,记得引入.h
,照着写就没有错!
写一个Android.mk文件
LOCAL_PATH := (callmy−dir)include (CLEAR_VARS)
LOCAL_MODULE := JniTest
LOCAL_SRC_FILES := TestJni.c
include $(BUILD_SHARED_LIBRARY)
然后右击jni文件夹选择我们的命令ndk-build
为了方便生成so文件,我们可以在Android Studio → External Tools中设置命令,来生成.so文件
Program: D:\android\android-ndk-r11c\build\ndk-build.cmd
Parameters: NDK_LIBS_OUT= ModuleFileDir /src/main/jniLibs
Working directory: ModuleFileDir \src\main
(注意:NDK_LIBS_OUT= ModuleFileDir /src/main/jniLibs
这个含义是将生成的so文件放在jniLibs这个文件下,
如果不写这句话,什么都不填,则为默认的文件夹)
然后右击jni文件夹选择我们的命令ndk-build
这样就生成.so文件了:
build.gradle的配置
调用: