最新AS中如何使用NDK?

在AS更新到1.3之后移除了NDK的编译配置,所以当我们在更新到2.2之后时,如何配置呢?其实,在AS中一切都是那么的简单,接下来我用截图一步步给大家介绍:
1.下载NDK插件:
最新AS中如何使用NDK?_第1张图片
或者:
最新AS中如何使用NDK?_第2张图片

2.当下载完成后倒入:
最新AS中如何使用NDK?_第3张图片

3.创建最新集成ndk的项目:
最新AS中如何使用NDK?_第4张图片

创建完成后,项目中会自动生成cpp源文件、CMakeLists.txt和app/budile.gradle中的配置:
最新AS中如何使用NDK?_第5张图片

这里的native-lib.cpp就是C/C++可扩展的源文件,而CMakeLists.txt则就是构建脚本,CMake 会根据构建脚本的指令去编译一个 C++ 源文件,也就是 native-lib.cpp,并将编译后的产物扔进共享对象库中,并将其命名为 libnative-lib.so,然后 Gradle 将其打包到 APK 中。
4.查看native-lib.cpp和MainActivity中对即将生成的so的引用方法:

最新AS中如何使用NDK?_第6张图片

此文件的内容就是c++语言,定义了一个返回字符串数据的方法。如下activity中引用:
最新AS中如何使用NDK?_第7张图片

这里我们很直接的就能看到用”native”声明的方法stringFromJNI(),此方法就是so中读取数据的方法。static{}的声明不用对说表示的一进入此类就将so资源库加载并初始化。
OK,到这里基本完成了所有的基础配置操作,最后我们就直接运行项目即可。运行完成后,我们在app/build/intermediates/cmake/debug/obj下看到各个兼容包的so库:
最新AS中如何使用NDK?_第8张图片

然后我们双击生成的apk看看里面是否引用了so包:

最新AS中如何使用NDK?_第9张图片

很显然已经自动编译进apk中了!

运行效果如下:
最新AS中如何使用NDK?_第10张图片

你可能感兴趣的:(ndk,androidstudio)