איסוף משוב מהבודקים

במדריך הזה מוסבר איך להפעיל משוב בתוך האפליקציה באמצעות Firebase App Distribution Android SDK האופציונלי, כדי שהבודקים יוכלו לשלוח משוב (כולל צילומי מסך) ישירות באפליקציה.

לפני שמתחילים

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

שלב 1: הפעלת App Distribution Tester API

  1. פותחים את מסוף Google Cloud ובוחרים את פרויקט Firebase.

  2. בקטע Firebase App Testers API, לוחצים על Enable (הפעלה).

שלב 2: מוסיפים את App Distribution לאפליקציה

App Distribution Android SDK מורכב משתי ספריות:

  • firebase-appdistribution-api: הספרייה שמיועדת ל-API בלבד, שאפשר לכלול אותה בכל הווריאציות של הגרסה.
  • firebase-appdistribution: הטמעה מלאה של SDK (אופציונלי).

הספרייה API-only מאפשרת לקוד שלכם לבצע קריאות ל-SDK. לשיחות אין השפעה אם ההטמעה המלאה של ה-SDK לא קיימת.

  1. מצהירים על התלות ב-App Distribution Android SDK בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל מדובר בקובץ <project>/<app-module>/build.gradle.kts או <project>/<app-module>/build.gradle).

  2. כדי להימנע מהכללת הפונקציונליות של עדכון עצמי של הטמעת ה-SDK המלאה בגרסאות ה-build שלכם ב-Google Play, צריך לזהות את וריאציות ה-build, כולל סוגי build או product flavors, שתפיצו דרך App Distribution.

  3. מצהירים על התלות ב-App Distribution Android SDK בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל app/build.gradle). מוסיפים את ההטמעה המלאה של ה-SDK רק לווריאציות שמיועדות אך ורק לבדיקות לפני השחרור:

    Kotlin

    dependencies {
        // ADD the API-only library to all variants
        implementation("com.google.firebase:firebase-appdistribution-api-ktx:16.0.0-beta15")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta16")
    }

    Java

    dependencies {
        // ADD the API-only library to all variants
        implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta16")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta16")
    }

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

כדי לאסוף משוב מהבודקים, משתמשים באחד מהטריגרים הבאים כדי לאפשר לבודקים לשלוח משוב:

  • טריגר מובנה להצגת הודעות: App DistributionAndroid SDK יכול להציג הודעה מתמשכת שהבודק יכול להקיש עליה מכל מקום באפליקציה. כדאי להשתמש בטריגר הזה אם רוצים להתחיל מהר יותר ולא צריך להתאים אישית את האופן שבו הבודקים מספקים משוב.

  • טריגר בהתאמה אישית: אתם יכולים לספק מנגנון טריגר משלכם, כמו הקשה על לחצן או על פריט בתפריט באפליקציה או ניעור המכשיר.

כשמשתמשים באחד מהטריגרים האלה והבודק שולח משוב, Android SDK מבצע את הפעולות הבאות:

  1. מצלם את המסך של הפעילות הנוכחית באפליקציה.

  2. מריץ בדיקות כדי לוודא שהבודק הפעיל את תכונות הבדיקה של ה-SDK. אם התכונות לבדיקה לא מופעלות, Android SDK יבקש מהבודק להיכנס ל-App Distribution באמצעות חשבון Google שלו.

  3. מתחילה פעילות במסך מלא שמאפשרת לבוחן לכתוב ולשלוח את המשוב שלו.

אפשרות 1: הפעלת התראה

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

כשמשתמשים ב-showFeedbackNotification() וכשהאפליקציה עוברת לרקע, ההתראה מוסתרת. אם רוצים להסתיר את ההתראה באופן מפורש, משתמשים ב-cancelFeedbackNotification(). מומלץ להוסיף את showFeedbackNotification() אל onCreate() של הפעילות הראשית.

Kotlin

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        Firebase.appDistribution.showFeedbackNotification(
            // Text providing notice to your testers about collection and
            // processing of their feedback data
            R.string.additionalFormText,
            // The level of interruption for the notification
            InterruptionLevel.HIGH)
    }
}

Java

public class MainActivity extends AppCompatActivity {
    FirebaseAppDistribution firebaseAppDistribution =
        FirebaseAppDistribution.getInstance();
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        firebaseAppDistribution.showFeedbackNotification(
            // Text providing notice to your testers about collection and
            // processing of their feedback data
            R.string.additionalFormText,
            // The level of interruption for the notification
            InterruptionLevel.HIGH);
    }
}

אפשרות 2: טריגר בהתאמה אישית

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

Kotlin

Firebase.appDistribution.startFeedback(R.string.feedbackMessage)

Java

FirebaseAppDistribution.getInstance().startFeedback(R.string.feedbackMessage);

שלב 4: בנייה ובדיקה של ההטמעה

בדיקה מקומית

כדי לבדוק את ההטמעה בלי להפיץ את האפליקציה קודם, פועלים לפי השלבים הבאים:

  1. מפעילים את מצב הפיתוח במכשיר המקומי:

    adb shell setprop debug.firebase.appdistro.devmode true
  2. מפתחים את האפליקציה כגרסת טרום-הפצה שכוללת את כל הספריות App Distribution ובודקים שאפשר להפעיל את מנגנון המשוב שהוטמע בשלב 3: הגדרה של משוב באפליקציה. המשוב לא נשלח כשנמצאים במצב פיתוח.

  3. אחרי הבדיקה, אפשר להשבית את מצב הפיתוח במכשיר:

    adb shell setprop debug.firebase.appdistro.devmode false

בדיקה מקצה לקצה

כדי לבדוק שהאפליקציה יכולה לשלוח משוב, צריך ליצור גרסת טרום-השקה של האפליקציה שכוללת את הספריות המלאות של App Distribution, ולבדוק את ההטמעה לפי השלבים הבאים:

  1. מעלים גרסה חדשה של האפליקציה אל App Distribution.

  2. מפיצים את גרסת האפליקציה לחשבון שיש לכם הרשאת גישה אליו.

  3. מורידים את האפליקציה דרך האינטרנט של App Distribution או אפליקציית הבדיקה של App Distribution ל-Android.

  4. שליחת משוב באמצעות המנגנון שהוטמע בשלב 3: הגדרת משוב בתוך האפליקציה.

  5. חשוב לוודא שאתם מחוברים לאותו חשבון שדרכו הפצתם את גרסת האפליקציה, ואז לשלוח משוב.

  6. אפשר לראות את המשוב בכרטיס של הגרסה החדשה ב-Firebase Console.

במאמר הפעלת תכונות בדיקה באמצעות ה-SDK מוסבר איך לפתור בעיות נפוצות, כמו בעיות שמונעות מהבודקים לשלוח משוב מהאפליקציה.

שלב 5: ניהול המשוב של הבודקים

אחרי שתאפשרו לטסטרים לשלוח משוב, תוכלו להשתמש בכלים הבאים כדי לבדוק את המשוב ולפעול בהתאם:

הצגה ומחיקה של משוב במסוף Firebase

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

אחרי שבודקים את המשוב של המשתמשים, אפשר למחוק אותו בלחיצה על הלחצן מחיקת משוב. המשוב שנמחק יוסר מהגרסה.

קבלת התראות באימייל על משוב חדש

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

כדי לקבל התראות באימייל לגבי App Distribution באמצעות מנגנון ברירת המחדל הזה, צריך לקבל את ההרשאה firebase.projects.update. ההרשאה הנדרשת הזו כלולה כברירת מחדל בתפקידים הבאים: אדמין ב-Firebase או בעלים או עורך של הפרויקט.

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

כדי להשבית את ההתראות באימייל, אפשר לעיין במאמר בנושא קבלת התראות מ-Firebase.

שליחת משוב חדש לכלי צד שלישי

אפשר גם לשלוח התראות לצוות באמצעות Cloud Functions for Firebase, לערוץ ההתראות המועדף של הצוות.App Distribution לדוגמה, אפשר לכתוב פונקציה שתתעד אירוע התראה לגבי משוב חדש בתוך האפליקציה, ותפרסם את פרטי ההתראה בשירות של צד שלישי כמו Discord, ‏ Slack או Jira.

כדי להגדיר יכולות מתקדמות של התראות באמצעות Cloud Functions for Firebase, צריך לבצע את השלבים הבאים:

  1. הגדרת Cloud Functions for Firebase, שכוללת את המשימות הבאות:

    1. מורידים את Node.js ואת npm.

    2. מתקינים את Firebase CLI ונכנסים לחשבון.

    3. מאתחלים את Cloud Functions for Firebase באמצעות ה-CLI של Firebase.

  2. כתיבה ופריסה של פונקציה שתתעד אירוע של התראת משוב מתוך האפליקציה מ-App Distribution ותטפל במטען הייעודי (payload) של האירוע (לדוגמה, תפרסם את פרטי ההתראה בהודעה ב-Discord).

כדי לראות פונקציה לדוגמה שמראה איך לשלוח משוב חדש ל-Jira, אפשר לעיין בדוגמה הזו.

מידע על כל אירועי ההתראות שאפשר לתעד זמין במסמכי העזר בנושא התראות של App Distribution.