【译】NDK入门

翻译自官网Getting Started with the NDKhtml

NDK入门

本地开发包(NDK)是一个能够在安卓开发中使用C和C++代码的一个工具集合,你可使用它提供的 平台库 来管理本地操做和访问物理设备组件,例如传感器和触摸输入。NDK不适合大多数新手Android程序员,他们只须要使用java代码和Framework API来开发app。而后,若是你的状况适合一下缘由,NDK将会变的很是有用。java

  • 设备发挥最大性能,以实现低延迟或运行计算密集型应用,如游戏或物理模拟.
  • 重用本身或别人开发的C或C++库.

使用Android Studio 2.2及以上版本,你可使用NDK把C和C++代码编译成一个本地库,以及使用Gradle把本地库打包到你的APK中,IDE集成了编译系统。你的Java代码经过Java本地接口(Jni)框架调用本地库中的函数。要学习更多关于Gradle和Android编译系统,阅读构建配置android

Android Studio的默认编译本地库的工具是CMake。Android Studio也支持ndk-build ,由于大量已存在的项目使用了编译工具包。然而,若是你是在新建立一个本地库,你应该使用CMake.程序员

这个指南给你准备使用NDK以及在Android Studio上使用NDK并运行提供信息,若是你没有最新版本的Android Studio,请如今下载并安装.api

注意: 若是你不想使用 Android Studio,你能够经过设置Eclipse使用NDK。然而,咱们建议迁移到最新版本Android Studio去支持安卓开发、Eclipse的ADT插件将再也不提供支持.oracle

实验Gradle的用户注意:请考虑使用 2.2.0版本插件或更高的版本,若是如下有任何一项适合你可使用CMake或ndk-build编译你的本地库:你的本地项目已经使用了CMake或ndk-build;你比较愿意使用一个稳定版本的Gradle编译系统;或者你想支持附加工具,如 CCache;不然,你能够继续使用实验版本的Gradle以及Android插件 .app

下载NDK和工具


在APP中要编译和调试本地代码, 你须要如下组件:框架

  • Android本地开发包(NDK):容许在Androi中使用C和C++代码的工具集.
  • CMake:一个外部构建工具, 与Gradle一块儿构建你的本地库
  • LLDB: 调试软件, Android Studio 使用它来调试本地代码.

你可使用You can install these components SDK Manager来安装这些组件:eclipse

  1. 打开一个项目,在主菜单上依次选择, select Tools > Android > SDK Manager
  2. 点击 SDK Tools 标签.
  3. 选中LLDB, CMake, and NDK, 旁边的框,如图一所示.

                                                                   图 1. 从SDK Manager安装 LLDB, CMake, 和 NDK.ide

  4. 点击 Apply, 而后在下个对话框中点击OK.
  5. 安装完成后, 点击 Finish, 而后点击 OK.

建立或导入本地项目


一旦设置Android Studio后,你能够简单的建立一个支持C/C++的项目。然而,若是您要向现有的Android Studio项目添加或导入本地代码,则须要遵循如下基本过程:

  1. 建立新的源文件 并将其添加到你的Android Studio项目。
    • 若是你已有本地代码或想要导入预构建的本地库,则能够跳过此步骤。.
  2. 建立一个CMake构建脚本, 告诉CMake如何将你的本地源构建到库中。 若是要导入并连接到预构建或平台库,则还须要此构建脚本。
    • 若是现有本地库已有CMakeLists.txt构建脚本或使用ndk-build并包含Android.mk构建脚本,则能够跳过此步骤。
  3. 经过提供一个CMake或ndk-build脚本文件路径连接Gradle到你的本地库.

    注意: 若是现有项目使用已过期的ndkCompile工具,则应在配置Gradle使用CMake或ndk-build以前打开你的build.properties文件并删除如下代码行

    // Remove this line
    android
    .useDeprecatedNdk =true
  4. 单击Run 构建和运行你的应用程序。Gradle添加你的CMake或ndk-build进程做为依赖来编译,构建和打包你的本机库与你的APK.

一旦你的应用在物理设备或模拟器上运行,您就可使用Android Studio调试应用。 不然,要了解有关NDK及其组件的更多信息,请阅读概述页面.

相关文章
相关标签/搜索