नेटिव डेवलपमेंट किट (एनडीके), टूल का एक सेट है. इसकी मदद से, C का इस्तेमाल करके और Android के साथ C++ कोड इस्तेमाल करता है और ऐसी प्लैटफ़ॉर्म लाइब्रेरी उपलब्ध कराता है जिनका इस्तेमाल आप आपकी नेटिव गतिविधियों को कंट्रोल करने के लिए और डिवाइस के बाहरी कॉम्पोनेंट, जैसे कि सेंसर और टच इनपुट. ऐसा हो सकता है कि NDK, ज़्यादातर नए Android डिवाइस के लिए सही न हो ऐसे प्रोग्रामर जिन्हें डेवलप करने के लिए सिर्फ़ Java कोड और फ़्रेमवर्क एपीआई का इस्तेमाल करने की ज़रूरत होती है उनके ऐप्लिकेशन को ढूंढने में मदद मिलती है. हालांकि, एनडीके उन मामलों में फ़ायदेमंद हो सकता है जहां आपको ये काम करने की ज़रूरत पड़ती है इनमें से एक या ज़्यादा:
- इंतज़ार का समय कम करने या दौड़ने के लिए, डिवाइस से अतिरिक्त परफ़ॉर्मेंस को किनारे से हटाएं ऐसे ऐप्लिकेशन जिनका इस्तेमाल कम किया जा सकता हो, जैसे कि गेम या फ़िज़िक्स सिम्युलेशन.
- अपने या अन्य डेवलपर के ऐप्लिकेशन का फिर से इस्तेमाल करना C या C++ लाइब्रेरी का इस्तेमाल करें.
Android Studio 2.2 और इसके बाद वाले वर्शन का इस्तेमाल करके, ये काम किए जा सकते हैं NDK का इस्तेमाल करके, C और C++ कोड को किसी नेटिव लाइब्रेरी में कंपाइल करें और उसे पैकेज करें Gradle का इस्तेमाल करके, APK में डेटा ट्रांसफ़र करना होगा. यह IDE का इंटिग्रेट किया गया बिल्ड सिस्टम है. आपका Java कोड Java नेटिव इंटरफ़ेस (जेएनआई) फ़्रेमवर्क की मदद से, आपकी नेटिव लाइब्रेरी में फ़ंक्शन को कॉल कर सकता है. सीखने में Gradle और Android बिल्ड सिस्टम के बारे में ज़्यादा जानकारी के लिए, अपना बिल्ड कॉन्फ़िगर करें लेख पढ़ें.
नेटिव लाइब्रेरी को कंपाइल करने के लिए, Android Studio का डिफ़ॉल्ट बिल्ड टूल CMake होता है. Android Studio से भी ndk-build के साथ काम करता है, क्योंकि बिल्ड टूलकिट का इस्तेमाल करने वाले मौजूदा प्रोजेक्ट की संख्या दी जाती है. हालांकि, अगर आपको तो आपको CMake का इस्तेमाल करना चाहिए.
यह गाइड आपको उस जानकारी के बारे में बताती है जिसका इस्तेमाल करके, आप Android Studio पर NDK. अगर आपके पास Android का सबसे नया वर्शन नहीं है Studio में जाकर, इसे अभी डाउनलोड और इंस्टॉल करें.
Gredle के एक्सपेरिमेंट के लिए इस्तेमाल करने वाले लोगों के लिए ध्यान दें: प्लगिन के 2.2.0 या इसके बाद वाले वर्शन पर माइग्रेट करना और CMake या ndk-build का इस्तेमाल करना अपनी स्थानीय लाइब्रेरी बनाने के लिए, अगर इनमें से कोई भी आप पर लागू होता है: आपका नेटिव प्रोजेक्ट पहले से CMake या ndk-build का इस्तेमाल कर रहा है; आप एक स्टेबल का इस्तेमाल करेंगे, Gradle बिल्ड सिस्टम का वर्शन; या आपको ऐड-ऑन टूल के लिए सहायता चाहिए, तो जैसे कि Cकैश. अगर आपको ऐसा नहीं करना है, तो इस्तेमाल करना जारी रखें Gradle और Android प्लगिन के एक्सपेरिमेंट के तौर पर उपलब्ध वर्शन.
एनडीके (NDK) और उसके टूल डाउनलोड करें
अपने ऐप्लिकेशन के नेटिव कोड को कंपाइल और डीबग करने के लिए, आपको इनकी ज़रूरत होगी घटक:
- Android नेटिव डेवलपमेंट किट (NDK): टूल का एक सेट है, जिसकी मदद से Android पर C और C++ कोड इस्तेमाल करने के लिए.
- CMake: एक बाहरी बिल्ड टूल, जो नेटिव लाइब्रेरी पर क्लिक करें. अगर आपको इस कॉम्पोनेंट का इस्तेमाल करना है, तो आपको इसकी ज़रूरत नहीं है ndk-build.
- LLDB: डीबगर Android Studio, नेटिव कोड को डीबग करने के लिए इस्तेमाल करता है.
इन कॉम्पोनेंट को इंस्टॉल करने के बारे में जानकारी पाने के लिए, एनडीके और सीमेकिंग टूल को इंस्टॉल और कॉन्फ़िगर करना देखें.
नेटिव प्रोजेक्ट बनाना या इंपोर्ट करना
Android Studio सेट अप करने के बाद, नए प्रोजेक्ट की मदद से C/C++ सहायता. हालांकि, अगर आपको किसी अगर मौजूदा Android Studio प्रोजेक्ट मौजूद है, तो आपको इस बुनियादी प्रोसेस का पालन करना होगा:
-
नया बनाएं
नेटिव सोर्स फ़ाइलों को जोड़ें और उन्हें अपने Android Studio प्रोजेक्ट में जोड़ें.
- अगर आपके पास पहले से ही नेटिव कोड है या आपको पहले से बनी नेटिव लाइब्रेरी को इंपोर्ट करें.
-
बनाएं
CMake की मदद से अपने नेटिव सोर्स बनाने का तरीका बताने के लिए CMake बिल्ड स्क्रिप्ट
लाइब्रेरी में ले जाते हैं. अगर आप आयात कर रहे हैं और
पहले से बनी हुई या प्लैटफ़ॉर्म लाइब्रेरी से लिंक करना.
- अगर आपकी मौजूदा लाइब्रेरी में पहले से ही
CMakeLists.txt
बिल्ड स्क्रिप्ट या ndk-build का इस्तेमाल करता है और इसमें शामिल हैAndroid.mk
बिल्ड स्क्रिप्ट.
- अगर आपकी मौजूदा लाइब्रेरी में पहले से ही
-
Gredle को इससे लिंक करें
अपनी नेटिव लाइब्रेरी बनाएं. इसके लिए, CMake या ndk-build का पाथ दें
स्क्रिप्ट फ़ाइल. Gradle, बिल्ड स्क्रिप्ट का इस्तेमाल करके,
Android Studio प्रोजेक्ट करना और अपनी मूल लाइब्रेरी (एसओ फ़ाइल) को
APK के साथ करना है.
ध्यान दें: अगर आपका मौजूदा प्रोजेक्ट, 'अब काम नहीं करता' के तौर पर मार्क किया गया है, तो
ndkCompile
टूल, आपकोbuild.properties
फ़ाइल को ढूंढें और कोड की नीचे दी गई लाइन हटाएं Gradle को CMake या ndk-build का इस्तेमाल करने के लिए कॉन्फ़िगर करने से पहले:// Remove this line android.useDeprecatedNdk = true
- क्लिक करके अपना ऐप्लिकेशन बनाएं और चलाएं चलाएं . Gradle ऐड कंपाइल, बिल्ड, और डिपेंडेंसी के तौर पर अपनी CMake या ndk-build प्रोसेस अपनी स्थानीय लाइब्रेरी को अपने APK से पैकेज करें.
जब आपका ऐप्लिकेशन किसी फ़िज़िकल डिवाइस या एम्युलेटर पर चल रहा हो, तो अपने ऐप्लिकेशन को डीबग करने के लिए Android Studio. इसके अलावा, एनडीके और उसके कॉम्पोनेंट के बारे में ज़्यादा जानने के लिए, Concepts पेज पढ़ें.