Android Studio 如何安裝 NDK 和 CMake
前面的小節(jié)我們學(xué)習(xí)了如何剖析應(yīng)用性能,接下來幾個小結(jié)我們學(xué)習(xí)如何 C/C++ 支持(NDK)方面的知識。本小節(jié)學(xué)習(xí)如何安裝 NDK 和 CMake。
1. 概述
我們可以向 Android 項目添加 C 和 C++ 代碼,只需將相應(yīng)的代碼添加到項目模塊的 cpp 目錄中即可。在我們構(gòu)建項目時,這些代碼會編譯到一個可由 Gradle 與我們的 APK 打包在一起的原生庫中。然后,Java 代碼即可通過 Java 原生接口 (JNI) 調(diào)用原生庫中的函數(shù)。
Android Studio 支持適用于跨平臺項目的 CMake,以及速度比 CMake 更快但僅支持 Android 的 ndk-build。目前不支持在同一模塊中同時使用 CMake 和 ndk-build。
要為我們的應(yīng)用編譯和調(diào)試原生代碼,我們需要以下組件:
-
Android 原生開發(fā)套件 (NDK):一個工具集,讓我們能夠在 Android 項目中使用 C 和 C++ 代碼;它提供了各種平臺庫,讓我們能夠管理原生 Activity 并訪問物理設(shè)備組件,例如傳感器和輕觸輸入。
-
CMake:一款外部編譯工具,可與 Gradle 搭配使用來編譯原生庫。如果我們只計劃使用 ndk-build,則不需要此組件。
-
LLDB:Android Studio 用于調(diào)試原生代碼的調(diào)試程序。默認(rèn)情況下,LLDB 將與 Android Studio 一起安裝。
2. 安裝 NDK 和 CMake
2.1 圖形界面安裝
當(dāng)我們安裝 NDK 時,Android Studio 會選擇最新的 NDK。對于大多數(shù)項目,安裝此默認(rèn)版本的 NDK 已經(jīng)足夠。
-
打開項目后,依次點擊 Tools > SDK Manager;
-
點擊 SDK Tools 標(biāo)簽頁;
-
選中 NDK (Side by side) 和 CMake 復(fù)選框;
-
點擊 OK,此時系統(tǒng)會顯示一個對話框,告訴我們 NDK 軟件包占用了多少磁盤空間。
-
點擊 OK;
-
安裝完成后,點擊 Finish。
2.2 安裝特定版本的 NDK
如果我們的項目需要一個或多個特定版本的 NDK,我們可以下載并配置特定版本。這樣做有助于確保在每個項目都依賴于特定版本的 NDK 的情況下,項目之間的編譯可重現(xiàn)。Android Studio 會將所有版本的 NDK 安裝到 android-sdk/ndk/ 目錄中。
要安裝特定版本的 NDK,請執(zhí)行以下操作:
-
打開項目后,依次點擊 Tools > SDK Manager。
-
點擊 SDK Tools 標(biāo)簽頁。
-
選中 Show Package Details 復(fù)選框。
-
選中 NDK (Side by side) 復(fù)選框及其下方與我們要安裝的 NDK 版本對應(yīng)的復(fù)選框。Android Studio 會將所有版本的 NDK 安裝到 android-sdk/ndk/ 目錄中。
-
點擊 OK。
此時系統(tǒng)會顯示一個對話框,告訴我們 NDK 軟件包占用了多少空間。 -
點擊 OK。
-
安裝完成后,點擊 Finish。
2.3 命令行安裝
要通過命令行安裝一個或多個版本的 NDK,請執(zhí)行以下操作:
- 使用 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 屬性進(jìn)行指定,如以下代碼示例所示。
android {
ndkVersion "major.minor.build"
}
4. 小結(jié)
本節(jié)課程我們主要學(xué)習(xí)了如何安裝 NDK 和 CMake。本節(jié)課程的重點如下:
- 掌握如何安裝 NDK 和 CMake;
- 掌握如何配置特定版本的 NDK。