Android NDK开发学习(二)
最后更新于:2022-04-01 16:21:30
[Android NDK开发学习(一):环境的配置](http://blog.csdn.net/qq_17766199/article/details/48174875)
Android NDK开发学习(二)学习官方Demo : HelloJni
根据第一篇的学习,我们已经成功的配置了NDK,那么接下了就是上手实战的时刻了。
1、导入官方Demo
导入方法就不多说:导入成功后如下图

<1>导入的项目直接时不能运行的,需要进行设置






接下来是Build的设置:



点击Specify Resources 后勾选你的资源文件。

最后注意的事:如果你配置的编译器在其他的编译器下边,记得要点击up按钮,把他排到第一位。
否则C代码的编译晚于Java的代码编译,会造成你的C代码要编译两次才能看到最新的修改。

<2>其他的配置参考我的第一篇。这里我就不重复了。
<3>查看代码



运行结果:(这个demo是判断出你手机的构架,从而显示出来,如图我的手机是armeabi-v7a)。

在编译时控制台打印如下信息:

可以看出编译时生成了各种构架的so文件。这个的控制是Application.mk文件完成的。
demo中Application.mk 文件中的APP_ABI := all 就是编译出所有平台。
不写这句默认是只编译armeabi。
最后贴出一个连接:这个是用来解决ndk项目有时报Unresolved inclusion: <jni.h>类似配置成功但是找不到头文件的错误。[点击打开链接](http://blog.csdn.net/zhubin215130/article/details/39347873)