يصف هذا الدليل كيفية توزيع حِزم APK على المختبِرين باستخدام واجهة سطر الأوامر في Firebase. تتيح لك أداة CLI تحديد المختبِرين وملاحظات الإصدار لأحد الإصدارات، ثم توزيع الإصدار وفقًا لذلك.
قبل البدء
أضِف Firebase إلى مشروع Android إذا لم يسبق لك إجراء ذلك.
إذا كنت لا تستخدم أي منتجات أخرى من Firebase، عليك فقط إنشاء مشروع وتسجيل تطبيقك. أمّا إذا قرّرت استخدام منتجات إضافية في المستقبل، فاحرص على إكمال جميع الخطوات في الصفحة المُشار إليها أعلاه.
الخطوة 1. إنشاء تطبيقك
عندما تكون مستعدًا لتوزيع إصدار تجريبي من تطبيقك على المختبِرين، أنشِئ حِزمة APK باستخدام عمليتك المعتادة. يجب عليك توقيع حزمة APK باستخدام مفتاح تصحيح الأخطاء أو مفتاح توقيع التطبيق.
الخطوة 2. توزيع تطبيقك على المختبِرين
لتوزيع تطبيقك على المختبِرين، حمِّل ملف تطبيقك باستخدام واجهة سطر الأوامر من Firebase:
- ثبِّت أحدث إصدار من واجهة سطر الأوامر في Firebase أو حدِّثه إلى أحدث إصدار (ننصحك بتنزيل البرنامج الثنائي المستقل الخاص بواجهة سطر الأوامر الخاصة بنظام التشغيل الذي تستخدمه). احرص على تسجيل الدخول واختبار إمكانية الوصول إلى مشاريعك.
- في صفحة "توزيع التطبيقات" على "وحدة تحكُّم Firebase"، اختَر التطبيق الذي تريد توزيعه، ثم انقر على البدء.
-
شغِّل الأمر
appdistribution:distribute
لتحميل تطبيقك وتوزيعه على المختبِرين. استخدِم المَعلمات التالية لضبط التوزيع:appdistribution:خيارات توزيع التطبيقات --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.apk \ --app 1:1234567890:android:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
يعرض واجهة سطر الأوامر في 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
بعد توزيع الإصدار، سيصبح متاحًا في لوحة بيانات "توزيع التطبيقات" ضمن وحدة تحكُّم Firebase لمدة 150 يومًا (خمسة أشهر). عندما تنتهي صلاحية الإصدار بعد 30 يومًا من انتهاء صلاحيته، يظهر إشعار انتهاء الصلاحية في كل من وحدة التحكّم وقائمة الإصدارات الخاصة بالمختبِرين على جهاز الاختبار.
يتلقّى المختبِرون الذين لم تتم دعوتهم لاختبار التطبيق دعوات بالبريد الإلكتروني لبدء الاستخدام، كما يتلقّى المختبِرون الحاليون إشعارات عبر البريد الإلكتروني تفيد بأنّ الإصدار الجديد جاهز لاختباره (اطّلِع على دليل إعداد المختبِر للحصول على تعليمات حول كيفية تثبيت التطبيق التجريبي). يمكنك مراقبة حالة كل مختبِر، وما إذا كان قد قبل الدعوة أم لا ونزَّل التطبيق في وحدة تحكُّم Firebase.
ويكون لدى المختبِرين 30 يومًا لقبول الدعوة لاختبار التطبيق قبل انتهاء صلاحيته. عندما تنتهي صلاحية الدعوة بعد 5 أيام من انتهاء صلاحيتها، يظهر إشعار انتهاء صلاحية في وحدة تحكُّم Firebase بجانب المختبِر في أحد الإصدارات. ويمكن تجديد الدعوة من خلال إعادة إرسالها باستخدام القائمة المنسدلة في صف المختبِر.
الخطوات اللاحقة
تنفيذ الملاحظات داخل التطبيق لتسهّل على المختبِرين إرسال الملاحظات والآراء حول تطبيقك (بما في ذلك لقطات الشاشة).
تعرَّف على كيفية عرض تنبيهات داخل التطبيق للمختبِرين عند توفُّر إصدارات جديدة من تطبيقك للتثبيت.
تعرَّف على أفضل الممارسات لتوزيع تطبيقات Android إلى مختبِري ضمان الجودة باستخدام CI/CD.