Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

توزيع تطبيقات iOS على المختبرين باستخدام المسار السريع

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

يمكنك توزيع التصميمات على المختبرين باستخدام Fastlane ، وهو نظام أساسي مفتوح المصدر يعمل على أتمتة إنشاء تطبيقات iOS و Android وإصدارها. يتبع تعليمات بسيطة محددة في Fastfile . بعد إعداد fastlane و Fastfile الخاص بك ، يمكنك دمج توزيع التطبيقات مع تكوين المسار السريع الخاص بك.

الخطوة 1. قم بإعداد Fastlane

  1. تثبيت وتثبيت Fastlane .

  2. لإضافة توزيع التطبيق إلى تكوين المسار السريع الخاص بك ، قم بتشغيل الأمر التالي من جذر مشروع iOS الخاص بك:

    fastlane add_plugin firebase_app_distribution

    إذا طالبك الأمر بخيار ، فحدد Option 3: RubyGems.org .

الخطوة 2. المصادقة باستخدام Firebase

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

الخطوة الثالثة. قم بإعداد Fastfile الخاص بك وتوزيع التطبيق الخاص بك

  1. في حارة. / ./fastlane/Fastfile / Fastfile ، أضف كتلة firebase_app_distribution . استخدم المعلمات التالية لتكوين التوزيع:
    معلمات firebase_app_distribution
    app

    مطلوب فقط إذا كان تطبيقك لا يحتوي على ملف تهيئة Firebase ( GoogleService-Info.plist ) : معرف تطبيق Firebase لتطبيقك. يمكنك العثور على معرف التطبيق في وحدة تحكم Firebase ، في صفحة الإعدادات العامة .

    app: "1:1234567890:ios:0a1b2c3d4e5f67890"
    googleservice_info_plist_path

    المسار إلى ملف GoogleService-Info.plist ، المتعلق بمسار المنتج المؤرشف. قم بالتعيين إلى GoogleService-Info.plist بشكل افتراضي.

    يتم استخدام الملف للحصول على معرف تطبيق Firebase app غير محددة.

    firebase_cli_token

    رمز التحديث الذي تتم طباعته عند تشغيل إجراء تسجيل الدخول إلى المكون الإضافي (راجع المصادقة باستخدام حساب Google أعلاه) ، أو عند مصادقة بيئة CI الخاصة بك باستخدام Firebase CLI (اقرأ استخدام CLI مع أنظمة CI لمزيد من المعلومات).

    service_credentials_file

    المسار إلى ملف json الخاص بحساب خدمة Google. انظر أعلاه للتعرف على كيفية المصادقة باستخدام بيانات اعتماد حساب الخدمة .

    ipa_path

    يستبدل apk_path (مهمل). المسار المطلق لملف IPA الذي تريد تحميله. إذا لم يكن محددًا ، يحدد الخط السريع موقع الملف من المسار الذي تم إنشاء الملف فيه.

    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

    علم منطقي. يمكنك تعيين هذا على " true " لطباعة إخراج التصحيح المطول.

فمثلا:

platform :ios do
    desc "My awesome app"
    lane :distribute do
        build_ios_app(...)
        # build_ios_app is a built-in fastlane action.

        firebase_app_distribution(
            app: "1:123456789:ios:abcd1234",
            testers: "tester1@company.com, tester2@company.com",
            release_notes: "Lots of amazing new features to test out!"
        )

    end
end

لإتاحة التصميم للمختبرين ، قم بتشغيل المسار الخاص بك:

fastlane <lane>

بعد توزيع التصميم الخاص بك ، يكون متاحًا في لوحة معلومات توزيع التطبيقات لوحدة تحكم Firebase لمدة 150 يومًا. عند مرور 30 ​​يومًا على انتهاء صلاحية الإصدار ، يظهر إشعار انتهاء الصلاحية في وحدة التحكم وفي قائمة البنيات الخاصة بالمختبرين على جهاز الاختبار الخاص بهم.

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

(اختياري) لزيادة رقم الإصدار تلقائيًا في كل مرة تنشئ فيها إصدارًا جديدًا في App Distribution ، يمكنك استخدام إجراء firebase_app_distribution_get_latest_release والإجراء increment_build_number . يوفر الكود التالي مثالاً على كيفية زيادة رقم الإصدار تلقائيًا:

lane :increment_version do
  latest_release = firebase_app_distribution_get_latest_release(
    app: "<your Firebase app ID>"
  )
  increment_build_number({ build_number: latest_release[:buildVersion].to_i + 1 })
end

لمعرفة المزيد حول ميزة المكون الإضافي fastlane هذا ، راجع الحصول على معلومات حول أحدث إصدار من تطبيقك .

الخطوة 4 (اختيارية). إدارة المختبرين للتوزيع

يمكنك إضافة وإزالة المختبرين من إصدار التطبيق الخاص بك باستخدام ملف Fastfile الخاص بك أو عن طريق تشغيل إجراءات Fastlane مباشرة. تتجاوز الإجراءات قيد التشغيل القيم المعينة في Fastfile .

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

استخدم Fastfile

# Use lanes to add or remove testers from an app release.
lane(:add_testers) do
  firebase_app_distribution_add_testers(
    emails: "foo@google.com,bar@google.com"
    # or file: "/path/to/testers.txt"
  )
end

lane(:remove_testers) do
  firebase_app_distribution_remove_testers(
    emails: "foo@google.com,bar@google.com"
    # or file: "/path/to/testers.txt"
  )
end
# Add or remove testers with the terminal
$ fastlane add_testers
$ fastlane remove_testers

قم بتشغيل إجراءات الخط السريع

fastlane run firebase_app_distribution_add_testers emails:"foo@google.com,bar@google.com"

fastlane run firebase_app_distribution_remove_testers emails:"foo@google.com,bar@google.com"

يمكنك أيضًا تحديد المختبرين باستخدام --file="/path/to/testers.txt بدلاً من --emails .

تقبل المهام firebase_app_distribution_add_testers و firebase_app_distribution_remove_testers أيضًا الوسيطات التالية:

  • project_name : رقم مشروعك في Firebase.
  • service_credentials_file : المسار إلى ملف بيانات اعتماد خدمة Google.
  • firebase_cli_token : رمز المصادقة لـ Firebase CLI.

إن ملف service_credentials_file و firebase_cli_token هما نفس الوسيطتين المستخدمتين في إجراء التحميل.

الخطوة 5 (اختيارية). احصل على معلومات حول أحدث إصدار لتطبيقك

يمكنك استخدام إجراء firebase_app_distribution_get_latest_release لجلب معلومات حول أحدث إصدار لتطبيقك في App Distribution ، بما في ذلك معلومات إصدار التطبيق وملاحظات الإصدار ووقت الإنشاء. تتضمن حالات الاستخدام زيادة الإصدار تلقائيًا ونقل ملاحظات الإصدار من الإصدار السابق.

القيمة المرجعة للإجراء عبارة عن تجزئة تمثل أحدث إصدار. هذه التجزئة متاحة أيضًا باستخدام lane_context[SharedValues::FIREBASE_APP_DISTRO_LATEST_RELEASE] . لمزيد من المعلومات حول الحقول المتاحة في هذه التجزئة ، راجع وثائق REST API .

المعلمات

firebase_app_distribution_get_latest_release المعلمات
app

مطلوب فقط إذا كان تطبيقك لا يحتوي على ملف تهيئة Firebase ( GoogleService-Info.plist ) : معرف تطبيق Firebase لتطبيقك. يمكنك العثور على معرف التطبيق في وحدة تحكم Firebase ، في صفحة الإعدادات العامة .

app: "1:1234567890:ios:0a1b2c3d4e5f67890"
googleservice_info_plist_path

المسار إلى ملف GoogleService-Info.plist ، المتعلق بمسار المنتج المؤرشف. قم بالتعيين إلى GoogleService-Info.plist بشكل افتراضي.

يتم استخدام الملف للحصول على معرف تطبيق Firebase app غير محددة.

firebase_cli_token

رمز تحديث مطبوع عند تشغيل إجراء تسجيل دخول المكون الإضافي (راجع المصادقة باستخدام حساب Google أعلاه) ، أو عند مصادقة بيئة CI الخاصة بك باستخدام Firebase CLI (اقرأ استخدام CLI مع أنظمة CI لمزيد من المعلومات).

service_credentials_file

المسار إلى ملف json الخاص بحساب خدمة Google. انظر أعلاه للتعرف على كيفية المصادقة باستخدام بيانات اعتماد حساب الخدمة .

debug

علم منطقي. يمكنك تعيين هذا على " true " لطباعة إخراج التصحيح المطول.

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