Check out what’s new from Firebase at Google I/O 2022. Learn more

הפצת אפליקציות iOS לבודקים באמצעות fastlane

אתה יכול להפיץ builds לבודקים באמצעות fastlane , פלטפורמת קוד פתוח המאפשרת בנייה ושחרור של יישומי iOS ו-Android אוטומטית. זה עוקב אחר הוראות פשוטות המוגדרות ב- Fastfile . לאחר שתגדיר את fastlane ואת Fastfile שלך, תוכל לשלב את הפצת אפליקציות עם תצורת fastlane שלך.

שלב 1. הגדר fastlane

  1. התקן והגדר Fastlane .

  2. כדי להוסיף הפצת אפליקציות לתצורת fastlane שלך, הפעל את הפקודה הבאה מהשורש של פרויקט ה-iOS שלך:

    fastlane add_plugin firebase_app_distribution

    אם הפקודה מבקשת ממך אפשרות, בחר Option 3: RubyGems.org .

שלב 2. אימות באמצעות Firebase

לפני שתוכל להשתמש בתוסף Fastlane, תחילה עליך לבצע אימות עם פרויקט Firebase שלך. ישנן שלוש דרכים להשיג זאת:

שלב 3. הגדר את Fastfile שלך ​​והפיץ את האפליקציה שלך

  1. בנתיב ./fastlane/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 שברצונך להעלות. אם לא מצוין, fastlane קובע את מיקום הקובץ מהנתיב שבו הקובץ נוצר.

    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>

לאחר הפצת ה-build שלך, הוא זמין בלוח המחוונים של הפצת אפליקציות של מסוף Firebase למשך 150 ימים. כאשר ה-build הוא 30 יום מתאריך פקיעת התפוגה, מופיעה הודעת תפוגה בקונסולה וברשימת ה-builds של הבוחן במכשיר הבדיקה שלו.

בודקים שלא הוזמנו בעבר לבדוק את האפליקציה מקבלים הזמנות באימייל כדי להתחיל. בודקים קיימים מקבלים הודעות אימייל על כך שמבנה חדש מוכן לבדיקה. כדי ללמוד כיצד להתקין את אפליקציית הבדיקה, ראה הגדר כבוחן . אתה יכול לעקוב אחר הסטטוס של כל בודק כדי לקבוע אם הוא קיבל את ההזמנה ואם הוא הוריד את האפליקציה במסוף Firebase.

(אופציונלי) כדי להגדיל אוטומטית את מספר ה-build שלך בכל פעם שאתה יוצר מהדורה חדשה ב-App Distribution, אתה יכול להשתמש בפעולה firebase_app_distribution_get_latest_release ובפעולה increment_build_number . הקוד הבא מספק דוגמה כיצד להגדיל אוטומטית את מספר ה-build שלך:

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 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 כדי להביא מידע על המהדורה האחרונה של האפליקציה שלך בהפצת האפליקציה, כולל מידע על גרסת האפליקציה, הערות גרסה וזמן יצירה. מקרי שימוש כוללים הגדלה אוטומטית של הגרסה והעברת הערות הגרסה מהגרסה הקודמת.

ערך ההחזר של הפעולה הוא hash המייצג את המהדורה האחרונה. Hash זה זמין גם באמצעות lane_context[SharedValues::FIREBASE_APP_DISTRO_LATEST_RELEASE] . למידע נוסף על השדות הזמינים ב-hash זה, עיין בתיעוד 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 כדי להדפיס פלט ניפוי באגים מילולי.

הצעדים הבאים