Android Studio 2.0+ CMake进行JNI开发

(一)新建JNI工程

第一步:在AS中下载cmake等工具
tools->android->sdkManager里面勾选CMake、LLDB、NDK这三项,在安装完成之后AS会自动的配好NDK的路径;然后检查File->Project Structrue检查NDK路径配置是否正确,也可手动设定或者更改。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
第二步:配置NDK环境变量
环境变量,“path”变量值后加入NDK的安装路径,一般NDK自动安装后在SDK目录下,如路径:“D:\Android\sdk\ndk-bundle”。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
第三步:新建工程,并勾选对C++的支持选项
勾选后,一路next,最后可以选择C++规范,选择默认不变即可。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
第四步:新建工程视图
比正常工程多出两个文件夹,主要是两个文件:cpp文件夹,要写的c代码文件;cmakeList.txt文件,配置库名以及包名等。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
第五步:文件配置
1、cmakeList.txt文件内容
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
2、build.gradle(Module:app)
内容多了部分,需要注意。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发

第六步:本地代码调用示例
1、程序代码内容
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
2、C程序内容
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
(二)新建工程后自己添加代码方法文件

第一步:新建cpp文件
最好在Project Files视图进行。右击新建即可。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
然后要在cmakeList.txt文件中添加路径,添加后文件才会显示,才会生效。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
第二步:定义本地方法
先导入库,库名要和定义的库名一样。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
定义本地方法。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
定义的方法开始显示红色,且需要自己写cpp文件的文件头,使用“Alt+ Enter”键让android studio自动生成文件头。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
android studio会将方法打包近之前的库里,要想新建一个库,还需要在CMakelists.txt文件中声明。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发
第三步:寻找so文件
在project视图中,如图所示路径下,可找到编译完成的.so文件。
Android Studio 2.0+ CMake进行JNI开发
Android Studio 2.0+ CMake进行JNI开发