يقدّم هذا المستند أفضل الممارسات لاستخدام Firebase App Distribution لجعل مسارات العمل لاختبار الإصدارات التجريبية من Android مستدامة وقابلة للتكرار في بيئة تدمج بين التطوير والنشر (CI/CD). تشمل الحلول Gradle وfastlane، ولكن لنمنحك المزيد من المرونة، نوفّر أيضًا حلولاً متاحة من خلال Firebase console وFirebase CLI وواجهة برمجة التطبيقات المتاحة للجميع في Firebase App Distribution. ونوضّح أيضًا حدود الإصدار والمختبِرين حتى تتمكّن من التخطيط مسبقًا للحصول على تجربة مثالية.
إذا كنت تستخدم أيضًا منصات Apple، يمكنك الاطّلاع على أفضل الممارسات لتوزيع تطبيقات Apple على مختبِري ضمان الجودة باستخدام أدوات CI/CD وFastlane.
قبل البدء
قبل تنفيذ أفضل الممارسات الواردة في هذا المستند، احرص على تفعيل App Distribution في وحدة تحكّم Firebase لكل تطبيق. إذا لم يتم تفعيل App Distribution، ستظهر لك رسالة الخطأ 404.
لتفعيل App Distribution، اتّبِع الخطوات التالية:
- افتح صفحة App Distribution في وحدة تحكّم Firebase.
- اختَر تطبيق Android.
- انقر على البدء.
بما أنّ مجموعات حزمات تطبيق Android (AAB) أصبحت التنسيق الأكثر شيوعًا لحِزم Android، ننصحك بإعداد إمكانية توزيع مجموعات حزمات تطبيق Android على المُختبِرين من خلال الربط بـ Google Play.
برمجة سير عمل اختبار الإصدار التجريبي باستخدام مسار التكامل المستمر/التسليم المستمر (CI/CD)
إذا كنت تريد إنشاء التطبيقات وإصدارها للمختبِرين بشكل آلي وكنت تستخدم عملية التطوير/النشر المتكاملَين (CI/CD)، ننصحك باستخدام fastlane أو Gradle. هناك خيار آخر وهو استخدام Firebase واجهة برمجة التطبيقات، التي تتيح لك الوصول إلى مجموعة كبيرة من منتجات Firebase.
استخدام fastlane
يمكنك دمج App Distribution في مسار التكامل المستمر/النشر المستمر باستخدام Fastlane، وهي أداة مفتوحة المصدر تُستخدم لأتمتة عملية إنشاء تطبيقات iOS وAndroid وإصدارها. من خلال إنشاء وتوزيع أحدث إصدارات تطبيقك على المختبِرين تلقائيًا، يمكنك ضمان حصول المختبِرين دائمًا على أحدث إصدار اختباري من تطبيقك.
للتعرّف على كيفية دمج App Distribution مع fastlane، اطّلِع على مقالة نشر تطبيقات Android للمختبِرين باستخدام fastlane.
استخدام Gradle
استخدِم Gradle لدمج App Distribution في عملية إنشاء تطبيق Android باستخدام المكوّن الإضافي
App Distribution Gradle. يتيح لك المكوّن الإضافي تحديد المختبِرين و
ملاحظات الإصدار في ملف build.gradle
الخاص بتطبيقك، ما يتيح لك ضبط
عمليات التوزيع لأنواع الإصدارات ونُسخ تطبيقك المختلفة.
للتعرّف على كيفية دمج App Distribution مع Gradle، يُرجى الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Gradle.
استخدام سطر أوامر Firebase
استخدِم أدوات Firebase CLI التي يوفّرها App Distribution لتوزيع الإصدارات على المختبِرين آليًا. يمكنك تحديد المختبِرين وملاحظات الإصدار لإصدار معيّن.
يمكنك توزيع أحدث إصدار من تطبيق Android من خلال تحديد رقم تعريف تطبيق Firebase، ويمكنك اختياريًا إضافة ملاحظة حول الإصدار وملف يحتوي على عناوين بريد إلكتروني للمختبِرين:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
لمزيد من المعلومات حول استخدام واجهة برمجة التطبيقات Firebase لتشغيل عمليات الإنشاء بشكل آلي، اطّلِع على مقالة نشر تطبيقات Android للمختبِرين باستخدام واجهة برمجة التطبيقات Firebase.
استخدام بيانات اعتماد الخدمة للمصادقة
استخدِم App Distribution مكوّن fastlane الإضافي، أو مكوّن Gradle الإضافي، أو Firebase CLI مع حسابات الخدمة. حساب الخدمة هو نوع من حسابات Google يمثّل التطبيقات (على عكس حسابات المستخدمين). يمكن لنظام CI استخدام حسابات الخدمة لتشغيل أعباء عمل App Distribution. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة المصادقة باستخدام حساب خدمة.
إذا كنت تستخدم عملية ربط هوية "وحدة العمل"، يمكنك إنشاء ملف إعدادات بيانات الاعتماد واستخدامه بدلاً من مفتاح حساب الخدمة.
مراعاة حدود الإصدار
يتيح App Distribution الاحتفاظ بـ 1,000 إصدار كحد أقصى لكل تطبيق. وهذا يعني أنّه عند تجاوز الحد الأقصى للإصدارات، يحذف App Distribution تلقائيًا الإصدارات الأقدم التي تتجاوز الحدّ. للتعرّف على كيفية إدارة حدود الإصدارات، اطّلِع على مقالة ما هي مدة توفّر إصدارات التطبيق؟
إضافة المجموعة نفسها من المختبِرين إلى إصدارات متعددة
إذا كنت تريد إضافة أعداد كبيرة من المختبِرين إلى إصداراتك، استخدِم وظائف إدارة المختبِرين المجمّعة في App Distribution.
ننصحك باستخدام المجموعات لإضافة المختبِرين نفسهم إلى إصدارات متعددة. تعمل المجموعة كقائمة التحكّم في الوصول. عند إزالة مختبِر من مجموعة، يفقد المختبِر إمكانية الوصول إلى جميع الإصدارات التي تم توزيعها على تلك المجموعة. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إضافة المختبِرين وإزالتهم من مجموعة.
إذا كان لديك الكثير من المختبِرين لإدارة اختباراتهم، يمكنك إضافة المختبِرين وحذفهم بشكل مجمّع باستخدام وحدة تحكّم Firebase. لأتمتة إضافة المختبِرين وإزالتهم، استخدِم Firebase CLI أو fastlane أو Gradle أو واجهة برمجة التطبيقات App Distribution API العلنية في Firebase.
مراعاة حدود عدد المختبِرين
تفرض App Distribution قيودًا على عدد المختبِرين الذين يمكنك إضافتهم إلى مشروع Firebase أو مجموعة App Distribution. عند تجاوز هذه الحدود، لن تتمكّن من توزيع تطبيقك على مختبِرين إضافيين. للاطّلاع على مزيد من المعلومات عن حدود عدد المختبِرين، اطّلِع على المقالة هل هناك حدود لعدد المختبِرين الذين يمكنني إضافتهم إلى تطبيقي؟
السماح للمختبِرين المحتملين بالتسجيل الذاتي للاختبار
لتسهيل توزيع تطبيقك على المزيد من المختبِرين، ننصحك باستخدام روابط الدعوة. رابط الدعوة هو عنوان URL فريد يتيح للمختبِرين إدخال عناوين بريدهم الإلكتروني للاشتراك في اختبار تطبيق. إنّ السماح للمستخدمين بإضافة أنفسهم إلى قائمة مختبِري التطبيق هو طريقة سلسة لزيادة قاعدة الاختبار الداخلي.
تشمل حالات استخدام روابط الدعوة برامج اختبار البرامج الداخلية في الشركات والمؤسسات التي تضم فِرق فحص جودة كبيرة ومجموعات المطوّرين الذين يريدون أن يتمكّن العملاء الفرديون من التحكّم في إمكانية وصول المختبِرين.
ننصحك بإنشاء رابط دعوة لمجموعة. أي مختبِر يوقع باستخدام رابط الدعوة تتم إضافته تلقائيًا إلى الإصدارات اللاحقة.
لمزيد من المعلومات، يُرجى الاطّلاع على مقالتَي إنشاء روابط دعوة وإضافة المختبِرين وإزالتهم من مجموعة.
التأكّد من أنّ المختبِرين يختبِرون الإصدار الذي يهمّك
عند تحميل إصدار جديد، يتم إرسال إشعار إلى المختبِرين عبر البريد الإلكتروني. كملءً لهذا الإشعار، يمكنك استخدام الميزات التالية، وهي روابط الإصدار والتنبيهات داخل التطبيق، للتأكّد من أنّ المختبِرين يختبِرون إصدار التطبيق المحدّد الذي يهمّك:
- روابط الإصدار: استخدِم هذه الميزة عندما تريد مشاركة إصدار معيّن مع المختبِرين. لمعرفة كيفية استخدام روابط الإصدار، يُرجى الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام وحدة تحكّم Firebase. تتوفّر هذه الروابط أيضًا مع أدوات سطر الأوامر (CLI) في Firebase و fastlane و Gradle للاستخدام مع أدوات التشغيل الآلي للبناء.
- التنبيهات داخل التطبيق: استخدِم هذه التنبيهات عندما تريد التأكّد من أنّ المختبِرين يختبِرون أحدث إصدار من تطبيقك. ومن خلال دمج حزمة تطوير البرامج (SDK) لنظام Android من App Distribution Firebase، يمكنك عرض التنبيهات مباشرةً داخل التطبيق للمختبِرين عند توفُّر إصدارات جديدة من تطبيقك. للتعرّف على كيفية إضافة تنبيهات داخل التطبيق، يُرجى الاطّلاع على مقالة إرسال إشعارات للمختبِرين بشأن الإصدارات الجديدة.
إزالة إذن الوصول تلقائيًا للمختبِرين الذين يغادرون الشركة
عندما تكون عملية الاختبار الداخلي لـ CI/CD قيد التشغيل، عليك التأكّد مما يلي: لن يعود بإمكان الأشخاص الذين غادروا الشركة الوصول إلى الإصدارات الاختبارية الداخلية. لمساعدتك في إدارة إمكانية وصول المختبِرين إلى النُسخ، يوفّر App Distribution الخيارات التالية:
- fastlane: يمكنك استخدام ملف Fastfile أو تنفيذ إجراءات fastlane مباشرةً. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام fastlane.
- Firebase سطر الأوامر: استخدِم الإجراء
firebase appdistribution:testers:remove
. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Firebase واجهة سطر الأوامر. - Gradle: إذا كنت تستخدم Gradle لإزالة المختبِرين، عليك تمرير
appDistributionRemoveTesters
مع الوسيطات
و--PROJECT_NUMBER
في ملف--EMAILS build.gradle
. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Gradle. - واجهة برمجة التطبيقات App Distribution API العلنية في Firebase:
استخدِم نقطة النهاية
testers.batchRemove
.