يوضّح هذا الدليل كيفية توزيع حِزم تطبيقات Android (AAB) على المختبِرين باستخدام واجهة سطر الأوامر Firebase. تتيح لك أداة سطر الأوامر تحديد المختبِرين وملاحظات الإصدار لإحدى البِنى، ثم توزيع البِنية وفقًا لذلك.
تتكامل App Distribution مع خدمة "مشاركة التطبيقات مع الفريق الداخلي" في Google Play لمعالجة حِزم AAB التي تحمّلها وعرض حِزم APK محسّنة لتتوافق مع إعدادات أجهزة المختبِرين. يتيح لك توزيع حِزم AAB إجراء ما يلي:
تشغيل حِزم APK محسّنة (يوفّرها Google Play) ومحسّنة لتتوافق مع أجهزة المختبِرين
الكشف عن المشاكل الخاصة بالأجهزة وتصحيحها
اختبار ميزات حِزم التطبيقات، مثل عرض الميزات في Play وعرض المواد في Play
تقليل حجم عمليات التنزيل للمختبِرين
الأذونات المطلوبة
لتحميل حِزم AAB إلى App Distribution، يجب ربط تطبيقك على Firebase بتطبيق في Google Play. يجب أن يكون لديك مستوى الوصول المطلوب لتنفيذ هذه الإجراءات.
إذا لم يكن لديك إذن الوصول اللازم إلى Firebase، يمكنك أن تطلب من مالك مشروع Firebase منحك الدور المناسب من خلال إعدادات إدارة الهوية وإمكانية الوصول في وحدة تحكّم Firebase. إذا كانت لديك أسئلة حول الوصول إلى مشروعك على Firebase، بما في ذلك العثور على مالك أو تحديد مالك، راجِع الأسئلة الشائعة حول"الأذونات والوصول إلى مشاريع Firebase".
ينطبق الجدول التالي على ربط تطبيق على Firebase بتطبيق في Google Play، بالإضافة إلى تحميل حِزم AAB.
الإجراء في وحدة تحكّم Firebase | إذن "إدارة الهوية وإمكانية الوصول" المطلوب | أدوار "إدارة الهوية وإمكانية الوصول" التي تتضمّن الأذونات المطلوبة تلقائيًا | الأدوار الإضافية المطلوبة |
---|---|---|---|
ربط تطبيق Firebase بتطبيق في Google Play | firebase.playLinks.update
|
إحدى الأدوار التالية: | الوصول إلى Google Play حساب مطوِّر بصفتك مشرفًا |
تحميل حِزم AAB إلى App Distribution | firebaseappdistro.releases.update
|
إحدى الأدوار التالية: | –– |
قبل البدء
أضِف Firebase إلى مشروع Android إذا لم يسبق لك إجراء ذلك. في نهاية سير العمل هذا، سيكون لديك تطبيق Android على Firebase في مشروعك على Firebase.
إذا كنت لا تستخدم أي منتجات أخرى من Firebase، ما عليك سوى إنشاء مشروع وتسجيل تطبيقك. وإذا قررت استخدام منتجات إضافية، احرص على إكمال جميع الخطوات الواردة في مقالة إضافة Firebase إلى مشروع Android.
لإنشاء رابط Firebase إلى Google Play وتحميل حِزم AAB، تأكَّد من استيفاء تطبيقك للمتطلبات التالية:
يجب أن يكون التطبيق على Google Play وتطبيق Android على Firebase مسجّلين باستخدام اسم الحزمة نفسه.
تم إعداد التطبيق على لوحة بيانات التطبيق على Google Play وتوزيعه على أحد مسارات Google Play (الاختبار الداخلي أو الاختبار المغلق أو الاختبار المفتوح أو الإصدار العلني).
اكتملت مراجعة التطبيق في Google Play وتم نشره. يتم نشر تطبيقك إذا كان عمود حالة التطبيق يعرض إحدى الحالات التالية: اختبار داخلي (وليس اختبارًا داخليًا لمسوّدة) أو اختبار مغلق أو اختبار مفتوح أو إصدار علني.
ربط تطبيق Android على Firebase بحساب المطوِّر على Google Play:
في وحدة تحكّم Firebase، انتقِل إلى
، ثم اختَر علامة التبويب عمليات الدمج. إعدادات المشروع في بطاقة Google Play، انقر على ربط.
إذا كانت لديك روابط إلى Google Play، انقر على إدارة بدلاً من ذلك.اتّبِع التعليمات الظاهرة على الشاشة لتفعيل App Distribution عملية الدمج واختَر تطبيقات Android على Firebase التي تريد ربطها بحسابك على Google Play.
الخطوة 1: إنشاء تطبيقك
عندما تكون مستعدًا لتوزيع إصدار تجريبي من تطبيقك على المختبِرين، أنشئ حزمة AAB (راجِع مستندات "استوديو Android" للحصول على التعليمات).
الخطوة 2: توزيع تطبيقك على المختبِرين
لتوزيع تطبيقك على المختبِرين، حمِّل ملف تطبيقك باستخدام واجهة سطر الأوامر (CLI) Firebase:
- ثبِّت أحدث إصدار من Firebase CLI أو حدِّث إليه (ننصحك بتنزيل الملف الثنائي المستقل الخاص بواجهة سطر الأوامر والمتوافق مع نظام التشغيل). احرص على تسجيل الدخول واختبار إمكانية الوصول إلى مشاريعك.
-
نفِّذ الأمر
appdistribution:distribute
لتحميل تطبيقك وتوزيعه على المختبِرين. استخدِم المَعلمات التالية لضبط التوزيع:appdistribution:distribute options --app
مطلوب: معرّف تطبيق Firebase الخاص بتطبيقك. يمكنك العثور على معرّف التطبيق في وحدة تحكّم Firebase، وذلك في صفحة الإعدادات العامة.
--app 1:1234567890:android:0a1b2c3d4e5f67890
--token
رمز مميّز لإعادة التحميل يتم عرضه عند مصادقة بيئة CI باستخدام واجهة سطر الأوامر Firebase (يمكنك الاطّلاع على استخدام واجهة سطر الأوامر مع أنظمة CI للحصول على مزيد من المعلومات).
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-file
ملاحظات الإصدار لهذا الإصدار.
يمكنك إما تحديد ملاحظات الإصدار مباشرةً:
--release-notes "Text of release notes"
أو حدِّد مسار ملف نص عادي:
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-file
عناوين البريد الإلكتروني للمختبِرين الذين تريد دعوتهم
يمكنك تحديد المختبِرين كقائمة بعناوين البريد الإلكتروني مفصولة بفواصل:
--testers "ali@example.com, bri@example.com, cal@example.com"
أو يمكنك تحديد مسار إلى ملف نص عادي يحتوي على قائمة مفصولة بفواصل لعناوين البريد الإلكتروني:
--testers-file "/path/to/testers.txt"
--groups
--groups-file
مجموعات المختبِرين التي تريد دعوتها (راجِع مقالة إدارة المختبِرين). يتم تحديد المجموعات باستخدام
أسماء مستعارة للمجموعات ، ويمكنك البحث عنها في وحدة تحكّم Firebase.يمكنك تحديد المجموعات كقائمة مفصولة بفواصل:
--groups "qa-team, trusted-testers"
أو يمكنك تحديد مسار إلى ملف نصي عادي يحتوي على قائمة بأسماء المجموعات مفصولة بفواصل:
--groups-file "/path/to/groups.txt"
--debug
علامة يمكنك تضمينها لطباعة ناتج سجل مفصّل.
--test-devices
--test-devices-file
تندرج أنواع التوزيع التالية ضمن الميزة التجريبية "المختبِر الآلي".
أجهزة الاختبار التي تريد توزيع الإصدارات عليها (راجِع الاختبارات المبرمَجة).
يمكنك تحديد المختبِرين كقائمة بعناوين البريد الإلكتروني مفصولة بفواصل:
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"
أو يمكنك تحديد مسار إلى ملف نص عادي يحتوي على قائمة بأجهزة الاختبار مفصولة بفواصل منقوطة:
--test-devices-file: "/path/to/test-devices.txt"
--test-username
اسم المستخدم الذي سيتم استخدامه لتسجيل الدخول تلقائيًا أثناء إجراء الاختبارات المبرمَجة
--test-password
--test-password-file
كلمة المرور التي سيتم استخدامها لتسجيل الدخول تلقائيًا أثناء إجراء الاختبارات المبرمَجة
أو يمكنك تحديد مسار إلى ملف نص عادي يحتوي على كلمة مرور:
--test-password-file: "/path/to/test-password.txt"
--test-username-resource
اسم المورد الخاص بحقل اسم المستخدم الذي سيتم استخدامه أثناء الاختبارات الآلية لتسجيل الدخول تلقائيًا.
--test-password-resource
اسم المورد لحقل كلمة المرور الذي سيتم استخدامه أثناء الاختبارات الآلية لتسجيل الدخول تلقائيًا.
--test-non-blocking
تنفيذ الاختبارات الآلية بشكل غير متزامن انتقِل إلى "وحدة تحكّم Firebase" للاطّلاع على نتائج الاختبارات التلقائية.
على سبيل المثال:
firebase appdistribution:distribute test.aab \ --app 1:1234567890:android:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
تعرض واجهة سطر الأوامر (CLI) في Firebase الروابط التالية بعد تحميل الإصدار. تساعدك هذه الروابط في إدارة الملفات الثنائية وضمان حصول المختبِرين والمطوّرين الآخرين على الإصدار الصحيح:
firebase_console_uri
- رابط يؤدي إلى Firebase وحدة التحكّم التي تعرض إصدارًا واحدًا. يمكنك مشاركة هذا الرابط مع مطوّرين آخرين في مؤسستك.testing_uri
- رابط يؤدي إلى الإصدار في تجربة المختبِر (تطبيق Android الأصلي) يسمح للمختبِرين بالاطّلاع على ملاحظات الإصدار وتثبيت التطبيق على أجهزتهم. ويجب أن يكون لدى المختبِر إذن بالوصول إلى الإصدار كي يتمكّن من استخدام الرابط.binary_download_uri
: هو رابط موقَّع يؤدي مباشرةً إلى تنزيل وتثبيت الرمز الثنائي للتطبيق (ملف APK أو AAB). تنتهي صلاحية الرابط بعد ساعة واحدة.
إدارة المختبِرين والمجموعات
بالإضافة إلى توزيع الإصدارات، يمكنك أيضًا استخدام
appdistribution:testers:add
وappdistribution:testers:remove
لدعوة مختبِرين جدد أو إزالة مختبِرين حاليين من مشروعك على Firebase.بعد إضافة مختبِر إلى مشروعك على Firebase، يمكنك إضافته إلى إصدارات فردية. بعد إزالة أحد المختبِرين، لن يعود بإمكانه الوصول إلى الإصدارات في مشروعك. يُرجى العِلم بأنّه سيظل بإمكان المختبِرين الذين تمت إزالتهم مؤخرًا الوصول إلى إصداراتك لفترة زمنية محدودة.
على سبيل المثال:
firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
يجب الفصل بين عناوين البريد الإلكتروني للمختبِرين بمسافة. يمكنك أيضًا تحديد المختبِرين باستخدام
--file /path/to/testers.txt
.إذا كان لديك عدد كبير من المختبِرين، ننصحك باستخدام المجموعات: يمكنك استخدام
appdistribution:group:create
وappdistribution:group:delete
لإنشاء مجموعات أو حذفها في مشروعك على Firebase.استخدِم
--group-alias
لتحديد مجموعة لأوامرappdistribution:testers:add
وappdistribution:testers:remove
.على سبيل المثال:
firebase appdistribution:group:create "QA team" qa-team
firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:group:delete qa-team
بعد توزيع الإصدار، يصبح متاحًا في لوحة بيانات App Distribution في وحدة تحكّم Firebase لمدة 150 يومًا (خمسة أشهر). عندما يتبقى 30 يومًا على انتهاء صلاحية الإصدار، يظهر إشعار بانتهاء الصلاحية في كل من وحدة التحكّم وقائمة الإصدارات لدى المختبِر على جهازه الاختباري.
يتلقّى المختبِرون الذين لم تتم دعوتهم لاختبار التطبيق دعوات عبر البريد الإلكتروني لبدء الاختبار، ويتلقّى المختبِرون الحاليون إشعارات عبر البريد الإلكتروني بأنّ إصدارًا جديدًا أصبح جاهزًا للاختبار (يمكنك الاطّلاع على دليل إعداد المختبِرين للحصول على تعليمات حول كيفية تثبيت الإصدار التجريبي من التطبيق). يمكنك مراقبة حالة كل مختبِر، أي ما إذا كان قد قبل الدعوة وما إذا كان قد نزّل التطبيق، وذلك في وحدة تحكّم Firebase.
يمكن للمختبِرين قبول دعوة لاختبار التطبيق خلال 30 يومًا قبل أن تنتهي صلاحيتها. عندما يتبقى 5 أيام على انتهاء صلاحية الدعوة، يظهر إشعار بانتهاء الصلاحية في وحدة تحكّم Firebase بجانب المختبِر في الإصدار. يمكن تجديد الدعوة من خلال إعادة إرسالها باستخدام القائمة المنسدلة في صف المختبِر.
الخطوات التالية
استخدِم ميزة تقديم الملاحظات داخل التطبيق لتسهيل إرسال المختبِرين ملاحظات حول تطبيقك (بما في ذلك لقطات الشاشة).
تعرَّف على كيفية عرض تنبيهات داخل التطبيق للمختبِرين عندما تتوفّر إصدارات جديدة من تطبيقك للتثبيت.
تعرَّف على أفضل الممارسات لتوزيع تطبيقات Android على مختبِري ضمان الجودة باستخدام التكامل المستمر/التسليم المستمر.