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


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

قبل البدء

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

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

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

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

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

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

  1. تثبيت Firebase CLI أو تحديثه إلى آخر إصدار (ننصحك بتنزيل البرنامج الثنائي المستقل لـ CLI الخاص بنظام التشغيل). احرص على تسجيل الدخول واختبار إمكانية الوصول إلى مماثلة.
  2. في صفحة App Distribution من وحدة تحكُّم Firebase، اختَر التطبيق الذي تريد توزيعه، ثم انقر على البدء.
  3. يمكنك تنفيذ الأمر 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 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 بجانب المختبِر في الإصدار. يمكن تجديد الدعوة من خلال إعادة إرسالها باستخدام القائمة المنسدلة في صف المختبِر.

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