تصف هذه الصفحة إعدادات التطبيق المفيدة في build.gradle.kts
على مستوى الوحدة.
الملف. بالإضافة إلى تقديم نظرة عامة على الخصائص المهمة المحددة في
ملف build.gradle.kts
، تعرّف على طريقة:
- يمكنك تغيير رقم تعريف التطبيق لإعدادات الإصدار المختلفة.
- يمكنك تعديل مساحة الاسم بأمان بغض النظر عن معرّف التطبيق.
ضبط معرّف التطبيق
يحتوي كل تطبيق Android على معرّف تطبيق فريد يشبه Java أو حزمة Kotlin مثل com.example.myapp. ويعرِّف هذا المعرّف تطبيقك بشكلٍ فريد على وفي "متجر Google Play".
يتم تحديد معرّف التطبيق من خلال السمة applicationId
في الوحدة
build.gradle.kts
، كما هو موضح هنا. تعديل قيمة applicationId
من خلال استبدال com.example.myapp
بـ
معرّف التطبيق:
Kotlin
android { defaultConfig { applicationId = "com.example.myapp" minSdk = 15 targetSdk = 24 versionCode = 1 versionName = "1.0" } ... }
Groovy
android { defaultConfig { applicationId "com.example.myapp" minSdkVersion 15 targetSdkVersion 24 versionCode 1 versionName "1.0" } ... }
رغم أن معرّف التطبيق يبدو كحزمة Kotlin أو Java تقليدية. الاسم وقواعد التسمية لمعرف التطبيق أكثر تقييدًا:
- يجب أن يحتوي على جزأين على الأقل (نقطة واحدة أو أكثر).
- يجب أن يبدأ كل مقطع بحرف.
- يجب أن تكون جميع الأحرف أبجدية رقمية أو شرطة سفلية [a-zA-Z0-9_].
عند إنشاء مشروع جديد في Android
الاستوديو، applicationId
يتم تلقائيًا تخصيص اسم الحزمة التي اخترتها أثناء الإعداد. إِنْتَ
من الناحية الفنية، يمكن تبديل الموقعَين بشكل مستقلّ من وقت لآخر، ولكنّها
لا يوصى به.
ننصحك بتنفيذ ما يلي عند ضبط معرّف التطبيق:
- حافِظ على معرّف التطبيق هو نفسه مساحة الاسم. الفرق بين أن الموقعين قد يكونان مُحيرَين بعض الشيء، ولكن إذا احتفظت بهما كما هو، عليك فلا داعي للقلق.
- لا تغيِّر معرِّف التطبيق بعد نشر التطبيق. إذا قمت بتغييره، يتعامل "متجر Google Play" مع عملية التحميل اللاحق على أنّها تطبيق جديد.
- تحديد معرّف التطبيق بوضوح. إذا لم يكن معرّف التطبيق واضحًا
محدد باستخدام السمة
applicationId
، فإنه يأخذ تلقائيًا على نفس كمساحة الاسم. هذا يعني أن تغيير مساحة الاسم يؤدي إلى تغيير بمعرف التطبيق، وهو عادة ليس ما تريده.
تغيير معرّف التطبيق للاختبار
تطبِّق أدوات التصميم تلقائيًا معرّف تطبيق على
اختبار قياس حالة التطبيق
حزمة APK تستخدم معرّف التطبيق لصيغة الإصدار المحدَّد مرفقة مع
.test
على سبيل المثال، ملف APK تجريبي
صيغة واحدة (com.example.myapp.free
) من الإصدار
رقم تعريف التطبيق
com.example.myapp.free.test
رغم أنّه من المفترض ألّا يكون ذلك ضروريًا، يمكنك تغيير معرّف التطبيق من خلال
تحديد السمة testApplicationId
في defaultConfig
حظر "productFlavor
"
تعيين مساحة الاسم
تتضمن كل وحدة من وحدات Android مساحة اسم تُستخدم كلغة Kotlin أو Java.
اسم الحزمة لـ
التي تم إنشاؤها صفّتَي R
وBuildConfig
.
يتم تحديد مساحة الاسم من خلال السمة namespace
في الوحدة
build.gradle.kts
، كما هو موضح في مقتطف الرمز التالي. namespace
يتم ضبطه مبدئيًا على اسم الحزمة الذي تختاره عند
إنشاء مشروعك
Kotlin
android { namespace = "com.example.myapp" ... }
Groovy
android { namespace "com.example.myapp" ... }
أثناء إنشاء تطبيقك في حزمة التطبيق النهائية (APK)، يحدد نظام Android
أدوات الإنشاء تستخدم مساحة الاسم كمساحة الاسم التي يتم إنشاؤها في تطبيقك R
والتي تُستخدم للوصول إلى
موارد التطبيقات.
على سبيل المثال، في ملف الإصدار السابق، يتم إنشاء فئة R
عند
com.example.myapp.R
الاسم الذي ضبطته للسمة namespace
في ملف build.gradle.kts
دائمًا مع اسم الحزمة الأساسية لمشروعك، حيث تحتفظ
والأنشطة ورموز التطبيقات الأخرى. يمكنك إدراج حزم فرعية أخرى في
مشروعك، ولكن يجب أن تستورد هذه الملفات الفئة R
باستخدام
مساحة الاسم من السمة namespace
.
لسير عمل أبسط، اجعل مساحة الاسم هي نفسها التطبيق، كما هي بشكل افتراضي.
تغيير مساحة الاسم
في معظم الحالات، يجب عليك الاحتفاظ بمساحة الاسم ومعرّف التطبيق نفسها، كما هي بشكل افتراضي. ومع ذلك، قد تحتاج إلى تغيير مساحة الاسم في إذا كنت تعيد تنظيم التعليمة البرمجية أو لتجنب تضاربات مساحة الاسم.
في هذه الحالات، قم بتغيير مساحة الاسم عن طريق تحديث
السمة namespace
في ملف build.gradle.kts
للوحدة الخاصة بك مستقلاً عن
معرّف التطبيق. قبل إجراء ذلك، تأكَّد من أنّ رقم تعريف طلبك
بشكل صريح، بحيث لا يؤدي تغيير مساحة الاسم إلى تغيير
معرّف التطبيق. لمزيد من المعلومات حول كيفية تأثير مساحة الاسم في
معرّف التطبيق، يُرجى الاطّلاع على المقالة ضبط معرّف التطبيق.
إذا كانت لديك أسماء مختلفة للسمة namespace
و Gradle applicationId
، فإن نسخة أدوات التصميم
معرّف التطبيق في ملف البيان النهائي لتطبيقك في نهاية الإصدار.
مثلاً إذا فحصت ملف AndroidManifest.xml
بعد إنشاء الإصدار،
يتم ضبط السمة package
على
معرّف التطبيق. السمة package
في البيان المدمج هي المكان الذي
يعمل "متجر Google Play" ونظام Android الأساسي على تحديد تطبيقك.
تغيير مساحة الاسم للاختبار
مساحة الاسم التلقائية لمجموعتَي المصدر androidTest
وtest
هي مساحة الاسم الرئيسية
مساحة الاسم، مع إضافة .test
في نهايته. على سبيل المثال، إذا كانت قيمة
السمة namespace
في ملف build.gradle
com.example.myapp
,
يتم تعيين مساحة اسم الاختبار بشكل افتراضي على
com.example.myapp.test
لتغيير مساحة الاسم للاختبار، استخدم
testNamespace
كما هو موضح في مقتطف الرمز التالي:
Kotlin
android { namespace = "com.example.myapp" testNamespace = "com.example.mytestapp" ... }
Groovy
android { namespace "com.example.myapp" testNamespace "com.example.mytestapp" ... }
تنبيه: لا تضبط testNamespace
و
namespace
إلى القيمة نفسها، بخلاف ذلك مساحة الاسم
حدوث تصادمات.
لمزيد من المعلومات عن الاختبارات، يمكنك الاطّلاع على اختبار التطبيقات على Android.