Android Studio 如何安装 NDK 和 CMake
前面的小节我们学习了如何剖析应用性能,接下来几个小结我们学习如何 C/C++ 支持(NDK)方面的知识。本小节学习如何安装 NDK 和 CMake。
1. 概述
我们可以向 Android 项目添加 C 和 C++ 代码,只需将相应的代码添加到项目模块的 cpp 目录中即可。在我们构建项目时,这些代码会编译到一个可由 Gradle 与我们的 APK 打包在一起的原生库中。然后,Java 代码即可通过 Java 原生接口 (JNI) 调用原生库中的函数。
Android Studio 支持适用于跨平台项目的 CMake,以及速度比 CMake 更快但仅支持 Android 的 ndk-build。目前不支持在同一模块中同时使用 CMake 和 ndk-build。
要为我们的应用编译和调试原生代码,我们需要以下组件:
-
Android 原生开发套件 (NDK):一个工具集,让我们能够在 Android 项目中使用 C 和 C++ 代码;它提供了各种平台库,让我们能够管理原生 Activity 并访问物理设备组件,例如传感器和轻触输入。
-
CMake:一款外部编译工具,可与 Gradle 搭配使用来编译原生库。如果我们只计划使用 ndk-build,则不需要此组件。
-
LLDB:Android Studio 用于调试原生代码的调试程序。默认情况下,LLDB 将与 Android Studio 一起安装。
2. 安装 NDK 和 CMake
2.1 图形界面安装
当我们安装 NDK 时,Android Studio 会选择最新的 NDK。对于大多数项目,安装此默认版本的 NDK 已经足够。
-
打开项目后,依次点击 Tools > SDK Manager;
-
点击 SDK Tools 标签页;
-
选中 NDK (Side by side) 和 CMake 复选框;
-
点击 OK,此时系统会显示一个对话框,告诉我们 NDK 软件包占用了多少磁盘空间。
-
点击 OK;
-
安装完成后,点击 Finish。
2.2 安装特定版本的 NDK
如果我们的项目需要一个或多个特定版本的 NDK,我们可以下载并配置特定版本。这样做有助于确保在每个项目都依赖于特定版本的 NDK 的情况下,项目之间的编译可重现。Android Studio 会将所有版本的 NDK 安装到 android-sdk/ndk/ 目录中。
要安装特定版本的 NDK,请执行以下操作:
-
打开项目后,依次点击 Tools > SDK Manager。
-
点击 SDK Tools 标签页。
-
选中 Show Package Details 复选框。
-
选中 NDK (Side by side) 复选框及其下方与我们要安装的 NDK 版本对应的复选框。Android Studio 会将所有版本的 NDK 安装到 android-sdk/ndk/ 目录中。
-
点击 OK。
此时系统会显示一个对话框,告诉我们 NDK 软件包占用了多少空间。 -
点击 OK。
-
安装完成后,点击 Finish。
2.3 命令行安装
要通过命令行安装一个或多个版本的 NDK,请执行以下操作:
- 使用 sdkmanager 工具查看可用的 CMake 和 NDK 软件包版本:
sdkmanager --list
2. 向 sdkmanager 传递要安装的软件包的字符串。 例如,要安装 CMake 和 NDK,请使用以下语法:
sdkmanager --install
"ndk;major.minor.build"
"cmake;major.minor.micro.build"
3. 配置特定版本的 NDK
如果我们安装特定版本的 NDK 并希望在模块中使用它,请使用模块的 build.gradle 文件中的 android.ndkVersion 属性进行指定,如以下代码示例所示。
android {
ndkVersion "major.minor.build"
}
4. 小结
本节课程我们主要学习了如何安装 NDK 和 CMake。本节课程的重点如下:
- 掌握如何安装 NDK 和 CMake;
- 掌握如何配置特定版本的 NDK。