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

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

אתה יכול לשלב את הפצת אפליקציות בתהליך הבנייה שלך באנדרואיד באמצעות הפלאגין App Distribution Gradle. הפלאגין מאפשר לך לציין את הבודקים ואת הערות השחרור שלך בקובץ build.gradle של האפליקציה שלך, ומאפשר לך להגדיר הפצות עבור סוגי build וגרסאות שונות של האפליקציה שלך.

מדריך זה מתאר כיצד להפיץ חבילות APK לבודקים באמצעות הפלאגין App Distribution Gradle.

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

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

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

שלב 1. הגדר את פרויקט האנדרואיד שלך

  1. בקובץ Gradle ברמת הפרויקט (בדרך כלל android/build.gradle ), הוסף את הפלאגין App Distribution כתלות ב-buildscript:

    buildscript {
        repositories {
            // Check that you have Google's Maven repository (if not, add it).
            google()
            jcenter()
        }
        dependencies {
            // Add the App Distribution Gradle plugin
            classpath 'com.google.firebase:firebase-appdistribution-gradle:3.0.1'
        }
    }
    
  2. בקובץ Gradle ברמת האפליקציה (בדרך כלל android/app/build.gradle ), כלול את הפלאגין App Distribution מתחת לפלאגין Android:

    apply plugin: 'com.android.application'
    // ...
    
    // Apply the App Distribution Gradle plugin
    apply plugin: 'com.google.firebase.appdistribution'
    // ...
    
  3. אם אתה מאחורי פרוקסי או חומת אש ארגונית, הוסף את מאפיין מערכת Java הבא שמאפשר להפצת אפליקציות להעלות את ההפצות שלך ל-Firebase:

    -Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=password
    

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

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

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

  1. בקובץ app/build.gradle , הגדר את הפצת אפליקציות על ידי הוספת קטע firebaseAppDistribution אחד לפחות. לדוגמה, כדי להפיץ את בניית release לבודקים:

    android {
    
        // ...
    
        buildTypes {
            release {
                firebaseAppDistribution {
                    artifactType="APK"
                    releaseNotesFile="/path/to/releasenotes.txt"
                    testers="ali@example.com, bri@example.com, cal@example.com"
                }
            }
        }
    
        // ...
    }
    
  2. ניתן להגדיר הפצת אפליקציות לסוגי בנייה וטעמים של מוצרים . לדוגמה, כדי להפיץ debug והפצה בטעמי מוצר "הדגמה" release ":

    android {
    
        // ...
    
        buildTypes {
            debug {...}
            release {...}
        }
    
        flavorDimensions "version"
        productFlavors {
          demo {
              dimension "version"
              firebaseAppDistribution {
                  releaseNotes="Release notes for demo version"
                  testers="demo@testers.com"
              }
          }
          full {
              dimension "version"
              firebaseAppDistribution {
                  releaseNotes="Release notes for full version"
                  testers="full@testers.com"
              }
          }
        }
    
        // ...
    }
    
  3. השתמש בפרמטרים הבאים כדי להגדיר את ההפצה:

פרמטרי בניית הפצת אפליקציות
appId

מזהה האפליקציה של האפליקציה שלך ב-Firebase. נדרש רק אם התוסף של Google Services Gradle לא מותקן אצלך. אתה יכול למצוא את מזהה האפליקציה בקובץ google-services.json או במסוף Firebase בדף ההגדרות הכלליות . הערך בקובץ build.gradle שלך ​​עוקף את פלט הערך מהפלאגין של google-services .

appId="1:1234567890:android:321abc456def7890"
serviceCredentialsFile

הנתיב לקובץ JSON המפתח הפרטי של חשבון השירות שלך. נדרש רק אם אתה משתמש באימות חשבון שירות.

artifactType

מציין את סוג הקובץ של האפליקציה שלך. ניתן להגדיר ל- "AAB" או "APK" .

artifactPath

נתיב מוחלט לקובץ APK או AAB שברצונך להעלות.

releaseNotes או releaseNotesFile

הערות גרסה עבור המבנה הזה.

אתה יכול לציין את הערות השחרור ישירות או את הנתיב לקובץ טקסט רגיל.

testers או testersFile

כתובות הדוא"ל של הבודקים שאליהם ברצונך להפיץ לבנות.

אתה יכול לציין את הבודקים כרשימה מופרדת בפסיקים של כתובות דוא"ל:

testers="ali@example.com, bri@example.com, cal@example.com"

לחלופין, תוכל לציין את הנתיב לקובץ המכיל רשימה מופרדת בפסיקים של כתובות דוא"ל:

testersFile="/path/to/testers.txt"
groups או קבוצות groupsFile

קבוצות הבודקים שאליהן ברצונך להפיץ את ה-builds (ראה ניהול בודקים ). קבוצות מוגדרות באמצעות כינויים קבוצתיים , שתוכל למצוא בכרטיסייה Testers במסוף Firebase App Distribution.

אתה יכול לציין את הקבוצות כרשימה מופרדת בפסיקים של כינויים של קבוצות:

groups="qa-team, android-testers"

לחלופין, אתה יכול לציין את הנתיב לקובץ המכיל רשימה מופרדת בפסיקים של כינויים קבוצתיים:

groupsFile="/path/to/tester-groups.txt"
stacktrace

מדפיס את ה-stacktrace עבור חריגים של משתמשים. זה מועיל בעת איתור באגים.

שלב 4. הפץ את האפליקציה שלך לבודקים

  1. לבסוף, כדי לארוז את אפליקציית הבדיקה שלך ולהזמין בודקים, בנה את היעדים BUILD-VARIANT ו- appDistributionUpload BUILD-VARIANT עם מעטפת Gradle של הפרויקט שלך, כאשר BUILD-VARIANT הוא טעם המוצר וסוג הבנייה האופציונליים שהגדרת בשלב הקודם. למידע נוסף על טעמי מוצר, ראה הגדרת גרסאות בנייה .

    לדוגמה, כדי להפיץ את האפליקציה שלך באמצעות release בניית הגרסה, הפעל את הפקודה הבאה:

    ./gradlew assembleRelease appDistributionUploadRelease
    

    לחלופין, אם ביצעת אימות עם חשבון Google שלך ​​ולא סיפקת אישורים בקובץ ה-Build של Gradle, כלול את המשתנה FIREBASE_TOKEN :

    export FIREBASE_TOKEN=1/a1b2c3d4e5f67890
    ./gradlew --stop // Only needed for environment variable changes
    ./gradlew assembleRelease appDistributionUploadRelease
    
  2. אתה יכול גם לעקוף את הערכים שהוגדרו בקובץ build.gradle שלך ​​על ידי העברת ארגומנטים של שורת הפקודה בצורה של --<property-name>=<property-value> . לדוגמה:

    • כדי להעלות בניית ניפוי באגים להפצת אפליקציות:

      ./gradlew bundleDebug appDistributionUploadDebug
          --artifactType="APK"
      
    • כדי להזמין בודקים נוספים או להסיר בודקים קיימים מפרויקט Firebase שלך:

      ./gradlew appDistributionAddTesters
          --projectNumber=<project_number>
          --emails="anothertester@email.com, moretesters@email.com"
      ./gradlew appDistributionRemoveTesters
          --projectNumber=<project_number>
          --emails="anothertester@email.com, moretesters@email.com"
      

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

    אתה יכול גם לציין בודקים באמצעות --file="/path/to/testers.txt" במקום --emails .

    המשימות appDistributionAddTesters ו- appDistributionRemoveTesters מקבלים גם את הארגומנטים הבאים:

    • projectNumber : מספר הפרויקט שלך ב-Firebase.

    • serviceCredentialsFile : הנתיב לקובץ האישורים של שירות Google שלך. זהו אותו ארגומנט המשמש את פעולת ההעלאה.

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

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

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

השלב הבא

בקר במעבדת הקוד של Android App Bundle כדי ללמוד כיצד להפיץ את גרסאות ה-App Bundle צעד אחר צעד.