เริ่มต้นใช้งาน NDK

Native Development Kit (NDK) คือชุดเครื่องมือที่ช่วยให้คุณใช้ C และโค้ด C++ กับ Android และมีไลบรารีแพลตฟอร์มที่คุณนำไปใช้จัดการได้ กิจกรรมที่มีอยู่แต่เดิม และเข้าถึงส่วนประกอบของอุปกรณ์ทางกายภาพ เช่น เซ็นเซอร์และ การป้อนข้อมูลด้วยการสัมผัส NDK อาจไม่เหมาะสมสำหรับ Android มือใหม่ส่วนใหญ่ โปรแกรมเมอร์ที่จำเป็นต้องใช้โค้ด Java และ API เฟรมเวิร์กเท่านั้นในการพัฒนา แอปของตนได้ อย่างไรก็ตาม NDK อาจมีประโยชน์ในกรณีที่คุณต้องการ ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้

  • บีบประสิทธิภาพเพิ่มเติมออกจากอุปกรณ์เพื่อให้เวลาในการตอบสนองต่ำหรือทำงาน แอปพลิเคชันที่เน้นการคำนวณมาก เช่น เกมหรือการจำลองฟิสิกส์
  • ใช้ของคุณเองหรือของนักพัฒนาซอฟต์แวร์คนอื่นๆ ซ้ำ C หรือ C++

เมื่อใช้ Android Studio 2.2 ขึ้นไป คุณจะทำสิ่งต่อไปนี้ได้ ใช้ NDK เพื่อรวบรวมโค้ด C และ C++ ลงในไลบรารีเนทีฟและจัดแพ็กเกจโค้ดนั้น ลงใน APK โดยใช้ Gradle ซึ่งเป็นระบบบิลด์ที่ผสานรวมของ IDE รหัส Java ของคุณ จะสามารถเรียกใช้ฟังก์ชันในคลังแบบเนทีฟผ่านเฟรมเวิร์ก Java Native Interface (JNI) เพื่อเรียนรู้ ข้อมูลเพิ่มเติมเกี่ยวกับ Gradle และระบบบิลด์ของ Android ที่หัวข้อกำหนดค่าบิลด์ของคุณ

เครื่องมือสร้างเริ่มต้นของ Android Studio สำหรับคอมไพล์ไลบรารีเนทีฟคือ CMake นอกจากนี้ Android Studio ยัง สนับสนุน ndk-build เนื่องจาก จำนวนโปรเจ็กต์ที่มีอยู่ซึ่งใช้ชุดเครื่องมือบิลด์ แต่ถ้าคุณ การสร้างไลบรารีเนทีฟใหม่ คุณควรใช้ CMake

คู่มือนี้จะให้ข้อมูลที่คุณจําเป็นในการเริ่มต้นใช้งาน NDK ใน Android Studio หากยังไม่มี Android เวอร์ชันล่าสุด Studio ดาวน์โหลดและติดตั้งเลย

ดึงดูดความสนใจของผู้ใช้ Gradle เวอร์ชันทดลอง: โปรดพิจารณา การเปลี่ยนไปใช้ปลั๊กอินเวอร์ชัน 2.2.0 ขึ้นไปและใช้ CMake หรือ ndk-build เพื่อสร้างไลบรารีเนทีฟหากเป็นไปตามเงื่อนไขใดๆ ต่อไปนี้: โปรเจ็กต์แบบเนทีฟใช้ CMake หรือ ndk-build อยู่แล้ว ควรใช้เวอร์ชันเสถียร เวอร์ชันของระบบบิลด์ Gradle หรือต้องการการรองรับเครื่องมือเสริม เช่น CCache มิฉะนั้น คุณสามารถ ใช้ เวอร์ชันทดลองของ Gradle และปลั๊กอิน Android

ดาวน์โหลด NDK และเครื่องมือ

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

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

โปรดดูข้อมูลเกี่ยวกับการติดตั้งคอมโพเนนต์เหล่านี้ที่หัวข้อติดตั้งและกำหนดค่า NDK และ CMake

สร้างหรือนำเข้าโปรเจ็กต์เนทีฟ

เมื่อตั้งค่า Android Studio แล้ว เพียงสร้างโปรเจ็กต์ใหม่ด้วย การรองรับ C/C++ อย่างไรก็ตามหากคุณต้องการเพิ่มหรือนำเข้าโค้ดเนทีฟไปยังไฟล์ โปรเจ็กต์ Android Studio ที่มีอยู่ คุณต้องทำตามขั้นตอนพื้นฐานต่อไปนี้

  1. สร้างใหม่ ไฟล์ต้นฉบับดั้งเดิม แล้วเพิ่มลงในโปรเจ็กต์ Android Studio ของคุณ
    • คุณสามารถข้ามขั้นตอนนี้ได้หากมีโค้ดแบบเนทีฟอยู่แล้วหรือต้องการที่จะ นำเข้าไลบรารีเนทีฟที่สร้างไว้ล่วงหน้า
  2. สร้าง สคริปต์บิลด์ CMake เพื่อบอก CMake ถึงวิธีสร้างแหล่งที่มาเนทีฟ ลงในไลบรารี คุณยังต้องใช้สคริปต์บิลด์นี้หากกำลังนำเข้าและ การลิงก์กับไลบรารีแพลตฟอร์มที่สร้างไว้ล่วงหน้า
    • คุณสามารถข้ามขั้นตอนนี้ได้หากไลบรารีเนทีฟที่มีอยู่ CMakeLists.txt สคริปต์บิลด์ หรือใช้ ndk-build และรวม Android.mk สคริปต์บิลด์
  3. ลิงก์ Gradle กับ ไลบรารีเนทีฟ โดยการระบุเส้นทางไปยัง CMake หรือ ndk-build ของคุณ ไฟล์สคริปต์ Gradle ใช้สคริปต์บิลด์เพื่อนำเข้าซอร์สโค้ดไปยัง โปรเจ็กต์ Android Studio และจัดแพ็กเกจไลบรารีเนทีฟ (ไฟล์ SO) ลงในไฟล์ APK

    หมายเหตุ: หากโปรเจ็กต์ที่มีอยู่ของคุณใช้เวอร์ชัน ndkCompile คุณควรเปิด build.properties ไฟล์และนำบรรทัดโค้ดต่อไปนี้ออก ก่อนที่จะกำหนดค่า Gradle ให้ใช้ CMake หรือ ndk-build:

    // Remove this line
    android.useDeprecatedNdk = true
    
  4. สร้างและเรียกใช้แอปโดยคลิก เรียกใช้ เรียกใช้ จากนั้นเรียกใช้แอปจากเมนูหลัก เพิ่ม Gradle กระบวนการ CMake หรือ ndk-build ของคุณเป็นทรัพยากร Dependency ในการคอมไพล์ สร้าง และ สร้างแพ็กเกจไลบรารีเนทีฟด้วย APK

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