本篇主要介绍在Android Studio中经过JNI完成NDK开发,后一篇文章会介绍经过CMake方式在Android Studio 中进行NDK开发,敬请期待。java
源码地址:android
https://github.com/xiaoliang0227/NDKDemo001git
Step1:新建项目,命名为NDKDemo001github
Step2:一路点击“Next”,最终点击“Finish”完成新项目的建立app
Step3:建立类包“cpp”,并在该包中建立文件”HelloNDK”,内容与结构以下:测试
Step4:build项目gradle
Step5:build完成后app/build/intermediates/classes/debug中结构以下:ui
Step6:经过Android Studio 自带的Terminal定位到文件夹app/build/intermediates/classes/debug,以下:this
Step7:使用指令,生成c语言头文件。指令:javah -jni com.zyl.ndkdemo001.cpp.HelloNDK,目标头文件在app/build/intermediates/classes/debug下,文件名为“com_zyl_ndkdemo001_cpp_HelloNDK.h”,若是看不到请刷新下项目。示例以下:debug
”com_zyl_ndkdemo001_cpp_HelloNDK.h“内容以下:
Step8:在src/main目录下新建文件夹“jni”并把“com_zyl_ndkdemo001_cpp_HelloNDK.h”剪切到该处,结构以下:
Step9:在“jni”目录中新建c source文件“com_zyl_ndkdemo001_cpp_HelloNDK.c”,内容以下:
Step10:配置app目录下的build.gradle文件,在defaultConfig标签中加入如下内容:
ndk {
moduleName "hellondk"
abiFilters "armeabi", "armeabi-v7a", "arm64-v8a", "x86", "x86_64", "mips", "mips64"
}
Step11:“make project”
Step12:若遇到如下问题,请在项目的gradle.properties中添加:android.useDeprecatedNdk=true,而后clean project 从新make project
生成的动态连接库文件在项目中的结构以下:
Step13:把该lib下的全部为文件拷贝到,app下的libs中
Step14:激动人心的时刻到了,测试,若是可以弹出“this is a android ndk hello.”,恭喜你,你成功了。代码以下: