android NDK入门
本地开发工具(Native Development Kit,NDK)允许你使用C/C++代码开发Android,提供能让你用来管理本地活动,或者访问物理硬件的平台运行库,例如传感器和触摸输入等。NDK可能不适合大部分仅仅需要java代码或者官方的API来开发的应用。然而,对于以下需求来说将会特别有用:
- 达到低功耗或者运行计算密集型应用,例如游戏
复用自己或者其他开发者的C/C++库
在Android studio 2.2或者更高版本,集成了Gradle构建工具,可以使用NDK编译C/C++代码到本地库,并打包进APK。java代码就能通过java 本地接口框架(Java Native Interface,JNI)调用编译好的本地库。
Android studio 用来编译本地库的默认构建工具是 CMake.Android studio 也支持nkd-build(因为有大量的工程都在使用这个工具)。然而,如果你是新建的工程,建议使用CMake。
本文将会给你提供Android studio运行NDK需要的信息。如果你还没有最新版的Android studio,点击这里下载。
下载NDK和工具
为了编译和调试本地代码,你需要以下组件:NDK:一套允许你使用C和C++开发Android的工具。
- CMake: 一个外部构建工具,搭配Gradle来编译本地库。如果你只想用ndk-build,就不需要这个CMake了.
- LLDB:调试工具,用来调试C和C++代码。
可以使用SDK Manager来安装这些组件:
1.打开工程,从主菜单选择Tools > Android > SDK Manager 。
2.点击SDK Tools列表。
3.如图所示,选中 LLDB,CMake和NDK.
4.点击apply按钮,并且在下一个对话框点击OK按钮。
5.当安装完成,点击finish,然后点击OK.
创建或者导入Native工程
设置好Android studio之后,就可以轻松地创建支持C和C++的新工程了。然而,如果你想添加或导入已经存在的Android studio工程,需要如下基本步骤:
1.创建新的native源文件,然后添加到Android studio工程。
提示:如果你已经有了native代码,可以跳过这一步。
2.创建一个CMake构建脚本,告诉CMake如何构建native资源到库中。如果你要导入现成的库,同样也需要这个构建脚本。提示:如果你已经有了CMakeLists.txt,或者使用ndk-build并且包含一个Android.mk的构建脚本,可以跳过这一步。
3.配置CMake或者ndk-build 脚本的路径,关联到Gradle,就会导入源代码到工程中,然后打包so到apk。
4.点击 run ,构建并运行你的app
运行起来到真机或者模拟器上后,就可以使用Android studio 来调试应用了。
翻译自谷歌官方文档,欲知更多内容,请关注本人博客