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

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

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

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

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

שלב 1. הגדר מסלול מהיר

  1. תקן וגדר הילוך גבוה .

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

    fastlane add_plugin firebase_app_distribution

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

שלב 2. אמת עם Firebase

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

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

  1. In a ./fastlane/Fastfile נתיב, להוסיף firebase_app_distribution בלוק. השתמש בפרמטרים הבאים כדי להגדיר את התפלגות:
    פרמטרים להפצת firebase_app_
    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 שרוצים להעלות. אם לא צוין, מסלול מהיר קובע את מיקום הקובץ מתוך הנתיב בו נוצר הקובץ.

    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 להדפיס מפורט פלט debug.

    לדוגמה:

    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

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

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

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