حزمة تطوير البرامج (NDK) هي مجموعة من الأدوات التي تتيح لك استخدام لغة البرمجة C ورمز C++ مع Android، كما توفر مكتبات الأنظمة الأساسية التي يمكنك استخدامها لإدارة الأنشطة الأصلية والوصول إلى مكونات الأجهزة المادية، مثل أجهزة الاستشعار الإدخال باللمس. قد لا يكون NDK مناسبًا لمعظم أجهزة Android المبتدئين. يحتاج المبرمجون الذين يحتاجون إلى استخدام رمز Java وواجهات برمجة التطبيقات لإطار العمل فقط إلى تطوير تطبيقاتهم. ومع ذلك، يمكن أن يكون NDK مفيدًا في الحالات التي يتعين عليك فيها واحد أو أكثر مما يلي:
- اضغط على مستوى الأداء الإضافي خارج الجهاز لتحقيق وقت استجابة سريع أو للتشغيل. التطبيقات المكثفة من الناحية الحاسوبية، مثل الألعاب أو محاكاة الفيزياء.
- أعد استخدام بياناتك أو تطبيقات المطوِّرين الآخرين مكتبات C أو C++.
باستخدام الإصدار 2.2 من "استوديو Android" والإصدارات الأحدث، يمكنك: استخدام NDK لتجميع التعليمة البرمجية C وC++ في مكتبة أصلية وتجميعها إلى ملف APK باستخدام Gradle، نظام التصميم المدمج في بيئة التطوير المتكاملة (IDE). رمز Java يمكنك بعد ذلك استدعاء الدوال في مكتبتك الأصلية من خلال إطار عمل واجهة Java الأصلية (JNI). للتعلّم لمعرفة مزيد من المعلومات حول Gradle ونظام تصميم Android، يُرجى الاطّلاع على مقالة Configure Your Build (ضبط التصميم الخاص بك).
إنّ أداة التصميم التلقائية في "استوديو Android" لتجميع المكتبات الأصلية هي CMake. و"استوديو Android" أيضًا تدعم ndk-build نظرًا عدد المشروعات الحالية التي تستخدم مجموعة أدوات الإنشاء. ومع ذلك، إذا كنت إنشاء مكتبة أصلية جديدة، يجب عليك استخدام CMake.
يمنحك هذا الدليل المعلومات التي تحتاجها لبدء استخدام NDK على "استوديو Android". في حال عدم تثبيت أحدث إصدار من Android استوديو، يمكنك تنزيله وتثبيته الآن.
الانتباه إلى مستخدمي Gradle التجريبيين: يمكنك الانتقال إلى الإصدار 2.2.0 أو إصدار أحدث من المكوّن الإضافي واستخدام CMake أو ndk-build لإنشاء مكتبات أصلية إذا كان أي مما يلي ينطبق عليك: استخدام CMake أو ndk-build بالفعل في المشروع الأصلي فأنت تفضل استخدام دالة ثابتة من نظام إنشاء Gradle؛ أو تريد دعمًا للأدوات الإضافية، مثل Ccache. بخلاف ذلك، يمكنك مواصلة استخدام الإصدار التجريبي من أداة Gradle ومكوّن Android الإضافي.
تنزيل NDK والأدوات
لتجميع الرمز الأصلي لتطبيقك وتصحيح الأخطاء فيه، تحتاج إلى ما يلي: المكونات:
- مجموعة أدوات تطوير البرامج (NDK) الأصلية لنظام التشغيل Android: مجموعة من الأدوات التي تتيح لك لاستخدام رموز C وC++ مع Android.
- CMake: أداة تصميم خارجية تعمل جنبًا إلى جنب مع Gradle لإنشاء مكتبة أصلية. ولست بحاجة إلى هذا المكون إذا كنت تخطط لاستخدام هذا المكون فقط. ndk-build.
- LLDB: برنامج تصحيح الأخطاء الذي يستخدمه "استوديو Android" لتصحيح أخطاء الرمز البرمجي الأصلي.
لمزيد من المعلومات عن تثبيت هذه المكوّنات، يُرجى الاطّلاع على تثبيت وتكوين NDK وCMake.
إنشاء مشروع مدمج مع المحتوى أو استيراده
بعد إعداد "استوديو Android"، يمكنك ببساطة إنشاء مشروع جديد باستخدام دعم C/C++ مع ذلك، إذا كنت تريد إضافة رمز أصلي أو استيراده إلى مشروع Android Studio الحالي، عليك اتباع العملية الأساسية التالية:
-
إنشاء تصنيف جديد
ملفات المصدر الأصلية وإضافتها إلى مشروعك على "استوديو Android".
- ويمكنك تخطي هذه الخطوة إذا كان لديك رمز أصلي أو تريد استيراد مكتبة مدمجة مسبقًا.
-
إنشاء
إنشاء نص برمجي لـ CMakesلإخبار CMake بكيفية إنشاء المصادر الأصلية.
في مكتبة. تحتاج أيضًا إلى نص الإصدار البرمجي هذا إذا كنت تقوم باستيراد ملف
الربط بمكتبات النظام الأساسي أو تم إنشاؤها مسبقًا.
- يمكنك تخطّي هذه الخطوة إذا كانت مكتبتك الحالية المدمجة مع المحتوى
يعتمد
CMakeLists.txt
على إنشاء نص برمجي، أو استخدام ndk-build وتضمينه جهازAndroid.mk
النص البرمجي للإصدار.
- يمكنك تخطّي هذه الخطوة إذا كانت مكتبتك الحالية المدمجة مع المحتوى
يعتمد
-
ربط Gradle بـ
مكتبتك الأصلية من خلال توفير مسار إلى CMake أو ndk-build
ملف البرنامج النصي. يستخدم Gradle النص البرمجي للإنشاء لاستيراد رمز المصدر إلى
مشروع استوديو Android وحزم المكتبة الأصلية (ملف SO) في
APK.
ملاحظة: إذا كان مشروعك الحالي يستخدم واجهة برمجة التطبيقات متوقّفة نهائيًا
ndkCompile
، يجب فتحbuild.properties
وإزالة سطر الرمز التالي قبل تهيئة Gradle لاستخدام CMake أو ndk-build:// Remove this line android.useDeprecatedNdk = true
-
يمكنك إنشاء تطبيقك وتشغيله بالنقر على
تشغيل
عمليات إضافة Gradle عملية CMake أو ndk-build كتبعية لتجميع البيانات إضافة مكتبة التطبيقات المدمجة مع المحتوى إلى حزمة APK.
بعد تشغيل تطبيقك على جهاز فعلي أو المحاكي، يمكنك استخدام "استوديو Android" لتصحيح أخطاء تطبيقك أما إذا كنت تريد الاطّلاع على مزيد من المعلومات عن NDK ومكوناتها، فاقرأ صفحة المفاهيم.