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

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

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

לפני שאתה מתחיל

אם עדיין לא עשית זאת, הוסף את Firebase לפרויקט Android שלך .

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

שלב 1. הגדר fastlane

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

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

    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. אתה יכול למצוא את מזהה האפליקציה במסוף Firebase, בדף ההגדרות הכלליות .

    app: "1:1234567890:android:0a1b2c3d4e5f67890"
    firebase_cli_token

    אסימון רענון שמודפס כאשר אתה מפעיל את פעולת הכניסה של הפלאגין (ראה אימות באמצעות חשבון Google , למעלה), או כאשר אתה מאמת את סביבת ה-CI שלך עם Firebase CLI (קרא השתמש ב-CLI עם מערכות CI למידע נוסף).

    service_credentials_file

    הנתיב לקובץ json של חשבון שירות Google שלך. ראה למעלה כיצד לבצע אימות באמצעות אישורי חשבון שירות .

    android_artifact_type

    מציין את סוג קובץ Android (APK או AAB).

    android_artifact_path

    מחליף apk_path (הוצא משימוש). נתיב מוחלט לקובץ APK או AAB שברצונך להעלות. אם לא מצוין, 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 :android do
    desc "My awesome app"
    lane :distribute do
        build_android_app(...)
        # build_android_app is a built-in fastlane action.
        firebase_app_distribution(
            app: "1:123456789:android: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 firebase_app_distribution_get_latest_release, ולדוגמה, בפלאגין increment_version_code fastlane . הקוד הבא מספק דוגמה כיצד להגדיל אוטומטית את מספר ה-build שלך:

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

למידע נוסף על פעולת firebase_app_distribution_get_latest_release , ראה קבלת מידע על המהדורה האחרונה של האפליקציה שלך .

שלב 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. אתה יכול למצוא את מזהה האפליקציה במסוף Firebase, בדף ההגדרות הכלליות .

app: "1:1234567890:android:0a1b2c3d4e5f67890"
firebase_cli_token

אסימון רענון שמודפס כאשר אתה מפעיל את פעולת הכניסה של הפלאגין (ראה אימות באמצעות חשבון Google , למעלה), או כאשר אתה מאמת את סביבת ה-CI שלך עם Firebase CLI (קרא השתמש ב-CLI עם מערכות CI למידע נוסף).

service_credentials_file

הנתיב לקובץ json של חשבון שירות Google שלך. ראה למעלה כיצד לבצע אימות באמצעות אישורי חשבון שירות .

debug

דגל בוליאני. אתה יכול להגדיר זאת כ- true כדי להדפיס פלט ניפוי באגים מילולי.