ติดตั้งและกำหนดค่า NDK และ CMake

หากต้องการคอมไพล์และแก้ไขข้อบกพร่องโค้ดเนทีฟสําหรับแอป คุณต้องมีคอมโพเนนต์ต่อไปนี้

  • Android Native Development Kit (NDK): ชุดเครื่องมือที่ช่วยให้คุณใช้โค้ด C และ C++ กับ Android ได้
  • CMake: เครื่องมือบิลด์ภายนอกที่ทำงานร่วมกับ Gradle เพื่อสร้างไลบรารีแบบเนทีฟ คุณไม่จำเป็นต้องใช้คอมโพเนนต์นี้หากมีแผนจะใช้ ndk-build เท่านั้น
  • LLDB: โปรแกรมแก้ไขข้อบกพร่องที่ Android Studio ใช้แก้ไขข้อบกพร่องของโค้ดเนทีฟ โดยค่าเริ่มต้น ระบบจะติดตั้ง LLDB ควบคู่ไปกับ Android Studio

หน้านี้จะอธิบายวิธีติดตั้งคอมโพเนนต์เหล่านี้โดยอัตโนมัติ หรือใช้ Android Studio หรือเครื่องมือ sdkmanager เพื่อดาวน์โหลดและติดตั้งด้วยตนเอง

ติดตั้ง NDK และ CMake โดยอัตโนมัติ

ปลั๊กอิน Android Gradle 4.2.0 ขึ้นไปจะติดตั้ง NDK และ CMake ที่จำเป็นโดยอัตโนมัติเมื่อคุณสร้างโปรเจ็กต์เป็นครั้งแรก หากยอมรับใบอนุญาตล่วงหน้าแล้ว หากอ่านและยอมรับข้อกำหนดของใบอนุญาตแล้ว คุณสามารถยอมรับใบอนุญาตในสคริปต์ล่วงหน้าได้ด้วยคำสั่งต่อไปนี้

   yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses

ติดตั้ง NDK และ CMake

เมื่อคุณติดตั้ง NDK แล้ว Android Studio จะเลือก NDK เวอร์ชันล่าสุดที่มีให้ สําหรับโปรเจ็กต์ส่วนใหญ่ การติดตั้ง NDK เวอร์ชันเริ่มต้นนี้ถือว่าเพียงพอแล้ว อย่างไรก็ตาม หากโปรเจ็กต์ต้องใช้ NDK เวอร์ชันที่เจาะจงอย่างน้อย 1 เวอร์ชัน คุณสามารถดาวน์โหลดและกําหนดค่าเวอร์ชันที่เจาะจงได้ ซึ่งจะช่วยให้คุณมั่นใจได้ว่าบิลด์จะสร้างซ้ำได้ในทุกโปรเจ็กต์ที่แต่ละโปรเจ็กต์ใช้ NDK เวอร์ชันที่เฉพาะเจาะจง Android Studio จะติดตั้ง NDK ทุกเวอร์ชันในไดเรกทอรี android-sdk/ndk/

หากต้องการติดตั้ง CMake และ NDK เริ่มต้นใน Android Studio ให้ทําดังนี้

  1. เมื่อโปรเจ็กต์เปิดอยู่ ให้คลิกเครื่องมือ > เครื่องมือจัดการ SDK

  2. คลิกแท็บเครื่องมือ SDK

  3. เลือกช่องทําเครื่องหมาย NDK (ควบคู่กัน) และ CMake

    รูปภาพเครื่องมือจัดการ SDK รูปที่ 1 หน้าต่างเครื่องมือ SDK ที่แสดงตัวเลือก NDK (ควบคู่กัน)

  4. คลิกตกลง

    กล่องโต้ตอบจะบอกคุณว่าแพ็กเกจ NDK ใช้พื้นที่ในดิสก์เท่าใด

  5. คลิกตกลง

  6. เมื่อติดตั้งเสร็จแล้ว ให้คลิก Finish (เสร็จสิ้น)

  7. โปรเจ็กต์จะซิงค์ไฟล์บิลด์และทำการบิลด์โดยอัตโนมัติ แก้ไขข้อผิดพลาดที่เกิดขึ้น

กำหนดค่า CMake เวอร์ชันที่เฉพาะเจาะจง

เครื่องมือจัดการ SDK มี CMake เวอร์ชันแยกออกมา 3.6.0 และเวอร์ชัน 3.10.2 โปรเจ็กต์ที่ไม่ได้ตั้งค่าเวอร์ชัน CMake ที่เจาะจงจะสร้างขึ้นด้วย CMake 3.10.2 หากต้องการตั้งค่าเวอร์ชัน CMake ให้เพิ่มข้อมูลต่อไปนี้ลงในไฟล์ build.gradle ของโมดูล

Groovy

android {
    ...
    externalNativeBuild {
        cmake {
            ...
            version "cmake-version"
        }
    }
}

Kotlin

android {
    ...
    externalNativeBuild {
        cmake {
            ...
            version = "cmake-version"
        }
    }
}

หากต้องการใช้ CMake เวอร์ชันที่ SDK Manager ไม่ได้รวมไว้ ให้ทำตามขั้นตอนต่อไปนี้

  1. ดาวน์โหลดและติดตั้ง CMake จากเว็บไซต์อย่างเป็นทางการของ CMake
  2. ระบุเวอร์ชัน CMake ที่ต้องการให้ Gradle ใช้ในไฟล์ build.gradle ของโมดูล
  3. เพิ่มเส้นทางไปยังการติดตั้ง CMake ลงในตัวแปรสภาพแวดล้อม PATH หรือรวมไว้ในไฟล์ local.properties ของโปรเจ็กต์ ดังที่แสดง หาก Gradle ไม่พบ CMake เวอร์ชันที่คุณระบุไว้ในไฟล์ build.gradle คุณจะได้รับข้อผิดพลาดการสร้าง

    # If you set this property, Gradle no longer uses PATH to find CMake.
    cmake.dir = "path-to-cmake"</pre>
    
  4. หากยังไม่ได้ติดตั้งระบบบิลด์ Ninja ในเวิร์กสเตชัน ให้ไปที่เว็บไซต์อย่างเป็นทางการของ Ninja แล้วดาวน์โหลดและติดตั้ง Ninja เวอร์ชันล่าสุดที่ใช้ได้กับระบบปฏิบัติการของคุณ อย่าลืมเพิ่มเส้นทางไปยังการติดตั้ง Ninja ลงในตัวแปรสภาพแวดล้อม PATH ด้วย

ติดตั้ง NDK เวอร์ชันที่เฉพาะเจาะจง

หากต้องการติดตั้ง NDK เวอร์ชันที่เฉพาะเจาะจง ให้ทำดังนี้

  1. เมื่อโปรเจ็กต์เปิดอยู่ ให้คลิกเครื่องมือ > เครื่องมือจัดการ SDK

  2. คลิกแท็บเครื่องมือ SDK

  3. เลือกช่องทำเครื่องหมายแสดงรายละเอียดแพ็กเกจ

  4. เลือกช่องทำเครื่องหมาย NDK (ใช้ควบคู่กัน) และช่องทำเครื่องหมายด้านล่างที่สอดคล้องกับเวอร์ชัน NDK ที่ต้องการติดตั้ง Android Studio จะติดตั้ง NDK เวอร์ชันทั้งหมดในไดเรกทอรี android-sdk/ndk/

    รูปภาพหน้าต่างเครื่องมือ SDK รูปที่ 2 หน้าต่างเครื่องมือ SDK ที่แสดงตัวเลือก NDK (ควบคู่กัน)

  5. คลิกตกลง

    กล่องโต้ตอบจะบอกคุณว่าแพ็กเกจ NDK ใช้พื้นที่เท่าใด

  6. คลิกตกลง

  7. เมื่อติดตั้งเสร็จแล้ว ให้คลิก Finish (เสร็จสิ้น)

  8. โปรเจ็กต์จะซิงค์ไฟล์บิลด์และทำการบิลด์โดยอัตโนมัติ แก้ไขข้อผิดพลาดที่เกิดขึ้น

  9. กำหนดค่าแต่ละโมดูลด้วยเวอร์ชัน NDK ที่ต้องการใช้ เมื่อใช้ Android Studio 3.6 ขึ้นไป หากคุณไม่ได้ระบุเวอร์ชัน ปลั๊กอิน Android Gradle จะเลือกเวอร์ชันที่ทราบว่าเข้ากันได้

กำหนดค่า NDK เวอร์ชันที่เฉพาะเจาะจงในโปรเจ็กต์

คุณอาจต้องกำหนดค่าเวอร์ชัน NDK ในโปรเจ็กต์หากเป็นไปตามเงื่อนไขข้อใดข้อหนึ่งต่อไปนี้

  • โปรเจ็กต์จะรับค่ามาโดยค่าเริ่มต้น และคุณต้องใช้ NDK และปลั๊กอิน Android Gradle (AGP) เวอร์ชันที่เจาะจง ดูข้อมูลเพิ่มเติมได้ที่กำหนดค่า NDK สำหรับปลั๊กอิน Android Gradle
  • คุณติดตั้ง NDK ไว้หลายเวอร์ชันและต้องการเวอร์ชันที่เฉพาะเจาะจง ในกรณีนี้ ให้ระบุเวอร์ชันโดยใช้พร็อพเพอร์ตี้ android.ndkVersion ในไฟล์ build.gradle ของโมดูล ดังที่แสดงในตัวอย่างโค้ดต่อไปนี้

    Groovy

    android {
        ndkVersion "major.minor.build" // e.g.,  ndkVersion "21.3.6528147"
    }
    

    Kotlin

    android {
        ndkVersion = "major.minor.build" // e.g.,  ndkVersion "21.3.6528147"
    }
    

เวอร์ชัน NDK เริ่มต้นตามเวอร์ชัน AGP

ก่อนเผยแพร่ AGP แต่ละเวอร์ชันได้รับการทดสอบอย่างละเอียดกับ NDK เวอร์ชันเสถียรล่าสุด ณ ขณะนั้น ระบบจะใช้ NDK เวอร์ชันนี้เพื่อสร้างโปรเจ็กต์หากคุณไม่ได้ระบุเวอร์ชัน NDK ในไฟล์ build.gradle เวอร์ชัน NDK เริ่มต้นสำหรับ AGP เวอร์ชันต่างๆ มีอยู่ในบันทึกประจำรุ่นของ AGP และบันทึกประจำรุ่นที่ผ่านมาของ AGP