अपने ऐप्लिकेशन के लिए नेटिव कोड को कंपाइल और डीबग करने के लिए, आपको इन कॉम्पोनेंट की ज़रूरत होगी:
- Android नेटिव डेवलपमेंट किट (NDK): टूल का एक सेट, जिसकी मदद से Android के साथ C और C++ कोड का इस्तेमाल किया जा सकता है.
- 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 के एक या एक से ज़्यादा वर्शन की ज़रूरत है, तो खास वर्शन डाउनलोड और कॉन्फ़िगर किए जा सकते हैं. ऐसा करने से, आपको यह पक्का करने में मदद मिलती है कि सभी प्रोजेक्ट के लिए, NDK के किसी खास वर्शन पर आधारित, फिर से बनाए जा सकने वाले बिल्ड उपलब्ध हों. Android Studio, android-sdk/ndk/
डायरेक्ट्री में NDK के सभी वर्शन इंस्टॉल करता है.
Android Studio में CMake और डिफ़ॉल्ट NDK इंस्टॉल करने के लिए, यह तरीका अपनाएं:
कोई प्रोजेक्ट खोलकर, टूल > SDK मैनेजर पर क्लिक करें.
SDK टूल टैब पर क्लिक करें.
NDK (साइड बाई साइड) और CMake चेकबॉक्स चुनें.
पहली इमेज. SDK टूल विंडो, जिसमें NDK (साइड बाई साइड) विकल्प दिख रहा है
ठीक है पर क्लिक करें.
डायलॉग बॉक्स से आपको पता चलता है कि NDK पैकेज, डिस्क पर कितना स्टोरेज लेता है.
ठीक है पर क्लिक करें.
इंस्टॉल पूरा होने के बाद, हो गया पर क्लिक करें.
आपका प्रोजेक्ट, बिल्ड फ़ाइल को अपने-आप सिंक करता है और बिल्ड करता है. आने वाली सभी गड़बड़ियों को ठीक करें.
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 में शामिल नहीं है, तो यह तरीका अपनाएं:
- CMake की आधिकारिक वेबसाइट से CMake डाउनलोड और इंस्टॉल करें.
- CMake का वह वर्शन बताएं जिसका इस्तेमाल Gradle को आपके मॉड्यूल की
build.gradle
फ़ाइल में करना है. CMake इंस्टॉलेशन का पाथ, अपने
PATH
एनवायरमेंट वैरिएबल में जोड़ें या इसे अपने प्रोजेक्ट कीlocal.properties
फ़ाइल में शामिल करें, जैसा कि दिखाया गया है. अगर Gradle कोbuild.gradle
फ़ाइल में बताए गए CMake वर्शन का पता नहीं चलता है, तो आपको बिल्ड से जुड़ी गड़बड़ी का मैसेज मिलता है.# If you set this property, Gradle no longer uses PATH to find CMake. cmake.dir = "path-to-cmake"</pre>
अगर आपके वर्कस्टेशन पर पहले से Ninja बिल्ड सिस्टम इंस्टॉल नहीं है, तो Ninja की आधिकारिक वेबसाइट पर जाएं. इसके बाद, अपने ओएस के लिए उपलब्ध Ninja का नया वर्शन डाउनलोड और इंस्टॉल करें. अपने
PATH
एनवायरमेंट वैरिएबल में, Ninja इंस्टॉलेशन का पाथ भी जोड़ना न भूलें.
NDK का कोई खास वर्शन इंस्टॉल करना
NDK का कोई खास वर्शन इंस्टॉल करने के लिए, यह तरीका अपनाएं:
कोई प्रोजेक्ट खोलकर, टूल > SDK मैनेजर पर क्लिक करें.
SDK टूल टैब पर क्लिक करें.
पैकेज की जानकारी दिखाएं चेकबॉक्स को चुनें.
NDK (साइड बाई साइड) चेकबॉक्स और उसके नीचे मौजूद वे चेकबॉक्स चुनें जो उन NDK वर्शन से जुड़े हैं जिन्हें आपको इंस्टॉल करना है. Android Studio,
android-sdk/ndk/
डायरेक्ट्री में NDK के सभी वर्शन इंस्टॉल करता है.दूसरी इमेज. SDK टूल विंडो, जिसमें NDK (साइड बाई साइड) के विकल्प दिख रहे हैं
ठीक है पर क्लिक करें.
डायलॉग बॉक्स से पता चलता है कि NDK पैकेज कितना स्टोरेज लेते हैं.
ठीक है पर क्लिक करें.
इंस्टॉल पूरा होने के बाद, हो गया पर क्लिक करें.
आपका प्रोजेक्ट, बिल्ड फ़ाइल को अपने-आप सिंक करता है और बिल्ड करता है. आने वाली सभी गड़बड़ियों को ठीक करें.
हर मॉड्यूल को कॉन्फ़िगर करें. इसके लिए, NDK के उस वर्शन का इस्तेमाल करें जिसका आपको इस्तेमाल करना है. Android Studio 3.6 या इसके बाद के वर्शन का इस्तेमाल करते समय, अगर आपने वर्शन की जानकारी नहीं दी है, तो Android Gradle प्लग इन वह वर्शन चुनता है जो उसके साथ काम करता है.
अपने प्रोजेक्ट में NDK टूल के खास वर्शन कॉन्फ़िगर करना
अगर इनमें से कोई एक बात सही है, तो आपको अपने प्रोजेक्ट में NDK टूल के वर्शन को कॉन्फ़िगर करना पड़ सकता है:
- आपका प्रोजेक्ट इनहेरिट किया गया है और आपको NDK और Android Gradle प्लग इन (AGP) के खास वर्शन का इस्तेमाल करना होगा. ज़्यादा जानकारी के लिए, Android Gradle प्लग-इन के लिए NDK कॉन्फ़िगर करना लेख पढ़ें.
आपके पास NDK टूल के कई वर्शन इंस्टॉल हैं और आपको किसी एक का इस्तेमाल करना है. इस मामले में, मॉड्यूल की
build.gradle
फ़ाइल मेंandroid.ndkVersion
प्रॉपर्टी का इस्तेमाल करके वर्शन की जानकारी दें, जैसा कि नीचे दिए गए कोड के सैंपल में दिखाया गया है.Groovy
android { ndkVersion "major.minor.build" // e.g., ndkVersion "21.3.6528147" }
Kotlin
android { ndkVersion = "major.minor.build" // e.g., ndkVersion "21.3.6528147" }
हर AGP वर्शन के लिए डिफ़ॉल्ट NDK वर्शन
रिलीज़ से पहले, हर AGP वर्शन की जांच, उस समय के सबसे नए और स्थिर NDK वर्शन के साथ पूरी तरह से की जाती है. अगर आपने build.gradle
फ़ाइल में NDK वर्शन की जानकारी नहीं दी है, तो आपके प्रोजेक्ट बनाने के लिए इस NDK वर्शन का इस्तेमाल किया जाता है. AGP के अलग-अलग वर्शन के लिए, डिफ़ॉल्ट NDK वर्शन के बारे में जानकारी, AGP के रिलीज़ नोट और AGP के पिछले रिलीज़ नोट में दी गई है.