توزيع تطبيقات Android على المختبِرين باستخدام واجهة سطر الأوامر في Firebase


يوضِّح هذا الدليل كيفية توزيع حِزم APK على المختبِرين باستخدام واجهة برمجة التطبيقات Firebase. تتيح لك أداة CLI تحديد المختبِرين واطلاعهم على ملاحظات الإصدار الخاصة بالإصدار، ثم توزيع الإصدار وفقًا لذلك.

قبل البدء

أضِف Firebase إلى مشروع Android إذا لم يسبق لك إجراء ذلك.

إذا لم تكن تستخدِم أي منتجات أخرى من Firebase، ما عليك سوى إنشاء مشروع وتسجيل تطبيقك. ومع ذلك، إذا قرّرت استخدام منتجات إضافية في المستقبل، احرص على إكمال كل الخطوات الواردة في الصفحة المرتبطة أعلاه.

الخطوة 1: إنشاء تطبيقك

عندما تكون مستعدًا لتوزيع إصدار تجريبي من تطبيقك على المختبِرين، أنشِئ حِزمة APK باستخدام عمليتك المعتادة. يجب عليك توقيع حزمة APK باستخدام مفتاح تصحيح الأخطاء أو مفتاح توقيع التطبيق.

الخطوة 2: توزيع تطبيقك على المختبِرين

لتوزيع تطبيقك على المختبِرين، حمِّل ملف تطبيقك باستخدام واجهة برمجة التطبيقات Firebase:

  1. ثبِّت أحدث إصدار من Firebase CLI (ننصحك بتنزيل البرنامج الثنائي المستقل الخاص بواجهة سطر الأوامر الخاصة بنظام التشغيل الذي تستخدمه). احرص على تسجيل الدخول واختبار إمكانية الوصول إلى projects.
  2. في صفحة App Distribution في وحدة تحكّم Firebase، اختَر التطبيق الذي تريد توزيعه، ثم انقر على البدء.
  3. شغِّل الأمر appdistribution:distribute لتحميل تطبيقك وتوزيعه على المختبِرين. استخدِم المَعلمات التالية لضبط توزيع المحتوى:

    appdistribution:distribute options
    --app

    مطلوبة: معرّف تطبيقك على Firebase يمكنك العثور على معرّف تطبيقك في وحدة تحكّم Firebase، ضمن صفحة الإعدادات العامة.

    --app 1:1234567890:android:0a1b2c3d4e5f67890
    --token

    رمز إعادة التنشيط الذي يتم طباعته عند مصادقة بيئة التكامل المستمر باستخدام واجهة سطر أوامر Firebase (اطّلِع على استخدام واجهة سطر الأوامر مع أنظمة التكامل المستمر للحصول على مزيد من المعلومات).

    --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 CLI الروابط التالية بعد تحميل الإصدار. تساعدك هذه الروابط في إدارة البرامج الثنائية والتأكّد من أنّ المختبِرين والمطوِّرين الآخرين لديهم الإصدار الصحيح:

    • 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 بجانب المختبِر في الإصدار. يمكن تجديد الدعوة من خلال إعادة إرسالها باستخدام القائمة المنسدلة في صف المختبِر.

الخطوات التالية