28、Android安裝配置NDK 和 CMake

要爲您的應用編譯和調試原生代碼,您需要以下組件:

  • Android 原生開發套件 (NDK):您可以利用這套工具在 Android 應用中使用 C 和 C++ 代碼。
  • CMake:一款外部編譯工具,可與 Gradle 搭配使用來編譯原生庫。如果您只計劃使用 ndk-build,則不需要此組件。
  • LLDB:Android Studio 用於調試原生代碼的調試程序。默認情況下,LLDB 將與 Android Studio 一起安裝。

本頁介紹瞭如何使用 Android Studio 或sdkmanager工具下載和安裝這些組件。

安裝 NDK 和 CMake

當您安裝 NDK 時,Android Studio 會選擇最新的 NDK。對於大多數項目,安裝此默認版本的 NDK 已經足夠。如果您的項目需要一個或多個特定版本的 NDK,您可以下載並配置特定版本。這樣做有助於確保在每個項目都依賴於特定版本的 NDK 的情況下,項目之間的編譯可重現。Android Studio 會將所有版本的 NDK 安裝到 android-sdk/ndk/ 目錄中。

要在 Android Studio 中安裝 CMake 和默認 NDK,請執行以下操作:

  1. 打開項目後,依次點擊 Tools > SDK Manager

  2. 點擊 SDK Tools 標籤頁。

  3. 選中 NDK (Side by side) 和 CMake 複選框。

    SDK 管理器的圖片
    圖 1:顯示 NDK (Side by side) 選項的 SDK Tools 窗口

     注意:如果您在 ndk-bundle 文件夾中安裝了 NDK,它會顯示在標籤爲 NDK 的列表中。如果您使用的是 Android Gradle 插件 3.5.0 或更高版本,則可以選中或取消選中該複選框。取消選中該複選框會卸載 NDK,釋放磁盤空間,並使該複選框從列表中消失。如果您卸載舊版 NDK,請從項目的 local.properties 文件中移除 ndk.dir 值,該值現已棄用。

  4. 點擊 OK

    此時系統會顯示一個對話框,告訴您 NDK 軟件包占用了多少磁盤空間。

  5. 點擊 OK

  6. 安裝完成後,點擊 Finish

  7. 您的項目會自動同步編譯文件並執行編譯。修正發生的所有錯誤。

安裝特定版本的 NDK

要安裝特定版本的 NDK,請執行以下操作:

  1. 打開項目後,依次點擊 Tools > SDK Manager

  2. 點擊 SDK Tools 標籤頁。

  3. 選中 Show Package Details 複選框。

  4. 選中 NDK (Side by side) 複選框及其下方與您要安裝的 NDK 版本對應的複選框。Android Studio 會將所有版本的 NDK 安裝到 android-sdk/ndk/ 目錄中。

    SDK Tools 窗口的圖片
    圖 2:顯示 NDK (Side by side) 選項的 SDK Tools 窗口

     注意:如果您在 ndk-bundle 文件夾中安裝了 NDK,它會顯示在標籤爲 NDK 的列表中。如果您使用的是 Gradle 3.5 版或更高版本,則可以選中或取消選中該複選框。取消選中該複選框會卸載已安裝的 NDK,釋放磁盤空間,並使複選框從列表中消失。如果您卸載舊版 NDK,請從項目的 local.properties 文件中移除 ndk.dir 值,該值現已棄用。

  5. 點擊 OK

    此時系統會顯示一個對話框,告訴您 NDK 軟件包占用了多少空間。

  6. 點擊 OK

  7. 安裝完成後,點擊 Finish

  8. 您的項目會自動同步編譯文件並執行編譯。修正發生的所有錯誤。

  9. 爲每個模塊配置要使用的 NDK 版本。使用 Android Studio 3.6 或更高版本時,如果您不指定版本,Android Gradle 插件會選擇已知兼容的版本

從命令行安裝 NDK

要通過命令行安裝一個或多個版本的 NDK,請執行以下操作:

  1. 使用 sdkmanager 工具查看可用的 CMake 和 NDK 軟件包版本:

    sdkmanager --list

     

  2. 向 sdkmanager 傳遞要安裝的軟件包的字符串。 例如,要安裝 CMake 和 NDK,請使用以下語法:

        sdkmanager --install
                  "ndk;major.minor.build"
                  "cmake;major.minor.micro.build"

     

  3. 爲項目中的每個模塊配置要使用的 NDK 版本。

在項目中配置特定版本的 NDK

如果您安裝特定版本的 NDK 並希望在模塊中使用它,請使用模塊的 build.gradle 文件中的 android.ndkVersion 屬性進行指定,如以下代碼示例所示。

    android {
        ndkVersion "major.minor.build"
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章