Android studio中NDK开发(一)——使用CMake构建NDKDemo

一、前言

NDK可以支持使用C/C++来编写Android程序,不但可以引入C/C++中优秀的库资源,而且在使用底层的C/C++来处理一些复杂的运算效率更高,并且可以方便跨平台移植。本篇主要以CMake的方式来构建NDK,主要以最常规的方式创建一个NDKImportDemo,并对自动创建官方例子进行分析构建的过程以及CMakeLists.txt构建文件的配置。

二、准备

1、检查Android studio版本

Android studio 2.2以上才支持CMake构建,我的版本是3.2.1

2、检查是否下载CMake、NDK

NDK:原生开发工具包,可以支持使用C/C++编写Android应用

CMake:跨平台的独立自动化构建工具,辅助构建原生库

LLDB:可以用来调试C/C++代码

 

3、配置NDK(路径为:“你的SDK”/ndk-bundle)

也可以通过https://developer.android.google.cn/ndk/downloads/下载自己电脑平台对应的NDK压缩包,解压到SDK路径下,再通过第三步将 ndk-bundle 配置进来。

 

三、创建

新建NDKImportDemo,记得把“include C++ support”勾选上,选择“Next”下一步

Exceptions Support(-fexceptions):支持C++的异常处理

Runtime Type Information Support(-frtti):支持运行时到的类型信息显示

 

四、分析

调到 “Project” 视图,重点关注下图中的四个文件:native-lib.cpp、build.gradle(app)、CMakeLists.txt、MainActivity

1、MainActivity

注意:这里的native方法只是声明,那么实现在哪里呢?看下面的native-lib.cpp文件

 

2、native-lib.cpp

注意:这个方法名一定是固定的格式,方法里面是具体的native方法的实现,通过C/C++来实现,因为这是cpp文件,所以使用的是C++。

 

3、CMakeLists.txt

目前CMake的语法暂时了解这四个,其他的在以后的需要用到的时候再学。

注意:这只是构建好CMakeLists.txt文件,还需要在app的build.gradle中配置CMakeLi.txt的路径

 

4、buid.gradle

五、生成so库

在以上文件配置好后,Make一下project,进行编译

编译通过之后就会生成相应的so库,在app/build/intermediates/cmake/debug/obj/${ANDROID_ABI}(相应的架构)目录下就可以看到相应的CPU架构对应的so库了

最后,点击“Run”运行,就可以看到自动生成的Demo效果了

 

六、参考

https://blog.csdn.net/Hi_Red_Beetle/article/details/79052169

https://developer.android.google.cn/studio/projects/add-native-code

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值