In dieser Anleitung wird beschrieben, wie Sie In-App-Feedback mithilfe des optionalen Firebase App Distribution Android SDK aktivieren, damit Ihre Tester Feedback (einschließlich Screenshots) direkt in der App senden können.
Hinweis
Falls noch nicht geschehen, fügen Sie Ihrem Android-Projekt Firebase hinzu.
Schritt 1: App Distribution Tester API aktivieren
Öffnen Sie die Google Cloud Console und wählen Sie Ihr Firebase-Projekt aus.
Klicken Sie unter „Firebase App Testers API“ auf Aktivieren.
Schritt 2: App Distribution in Ihre App einfügen
Das App Distribution Android SDK besteht aus zwei Bibliotheken:
firebase-appdistribution-api
: Die reine API-Bibliothek, die Sie in alle Build-Varianten einfügen können.firebase-appdistribution
: Die vollständige SDK-Implementierung (optional).
Mit der reinen API-Bibliothek kann Ihr Code Aufrufe an das SDK senden. Die Aufrufe haben keine Auswirkungen, wenn die vollständige SDK-Implementierung nicht vorhanden ist.
Deklarieren Sie die Abhängigkeit für das App Distribution Android SDK in der Gradle-Datei Ihres Moduls (auf App-Ebene) (in der Regel
<project>/<app-module>/build.gradle.kts
oder<project>/<app-module>/build.gradle
).Wenn Sie vermeiden möchten, dass die Selbstaktualisierungsfunktion der vollständigen SDK-Implementierung in Ihre Google Play-Builds aufgenommen wird, identifizieren Sie die Build-Varianten, einschließlich Build-Typen oder Produktvarianten, die Sie über App Distribution vertreiben.
Deklarieren Sie die Abhängigkeit für das App Distribution-Android-SDK in der Gradle-Datei Ihres Moduls (auf App-Ebene) (in der Regel
app/build.gradle
). Fügen Sie die vollständige SDK-Implementierung nur Varianten hinzu, die ausschließlich für Pre-Release-Tests vorgesehen sind: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") }
Schritt 3: In-App-Feedback konfigurieren
Verwenden Sie einen der folgenden Trigger, um Feedback von Ihren Testern zu erhalten:
Integrierter Benachrichtigungstrigger: Mit dem App Distribution Android SDK kann eine laufende Benachrichtigung angezeigt werden, auf die Tester überall in der App tippen können. Verwenden Sie diesen Trigger, wenn Sie schnell loslegen möchten und nicht anpassen müssen, wie Ihre Tester Feedback geben.
Benutzerdefinierter Trigger: Sie können einen eigenen Triggermechanismus angeben, z. B. das Tippen auf eine Schaltfläche oder ein Menüelement in Ihrer App oder das Schütteln des Geräts.
Wenn Sie einen dieser Trigger verwenden und der Tester Feedback gibt, führt das Android SDK die folgenden Aktionen aus:
Erstellt einen Screenshot der aktuellen Aktivität der App.
Führt Prüfungen durch, um sicherzustellen, dass der Tester die Testfunktionen des SDK aktiviert hat. Wenn die Testfunktionen nicht aktiviert sind, fordert das Android SDK den Tester auf, sich mit seinem Google-Konto in App Distribution anzumelden.
Startet eine Vollbildaktivität, in der der Tester sein Feedback eingeben und senden kann.
Option 1: Benachrichtigung auslösen
Mit showFeedbackNotification()
können Sie auf dem Gerät des Testers eine fortlaufende Benachrichtigung anzeigen, die er antippen kann, um Feedback zu geben.
Wenn Sie die Benachrichtigung konfigurieren, müssen Sie einen Text angeben, der dem Tester angezeigt wird, bevor er Feedback sendet, sowie eine Unterbrechungsstufe für die Benachrichtigung (entsprechend der Wichtigkeit des Benachrichtigungschannels). Wenn Sie Ihre Tester über die Erhebung und Verarbeitung ihrer Feedbackdaten informieren möchten, können Sie den Text verwenden, um eine solche Mitteilung zu erstellen.
Wenn Sie showFeedbackNotification()
verwenden und die App in den Hintergrund verschoben wird, wird die Benachrichtigung ausgeblendet. Wenn Sie die Benachrichtigung explizit ausblenden möchten, verwenden Sie cancelFeedbackNotification()
. Wir empfehlen, showFeedbackNotification()
in das onCreate()
Ihrer Hauptaktivität einzufügen.
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);
}
}
Option 2: Benutzerdefinierter Trigger
Verwenden Sie die Methode startFeedback()
, um Feedback über einen Mechanismus Ihrer Wahl zu geben. Wenn Sie beispielsweise Feedback auslösen möchten, können Sie dem Aktionsmenü Ihrer App den Menüpunkt „Feedback geben“ hinzufügen oder Ihre Tester das Gerät schütteln oder einen Screenshot erstellen lassen.
Wenn Sie Feedback auslösen, geben Sie einen Text an, der dem Tester angezeigt wird, bevor er Feedback sendet. Wenn Sie Ihre Tester über die Erhebung und Verarbeitung ihrer Feedbackdaten informieren möchten, können Sie diesen Text verwenden.
Kotlin
Firebase.appDistribution.startFeedback(R.string.feedbackMessage)
Java
FirebaseAppDistribution.getInstance().startFeedback(R.string.feedbackMessage);
Schritt 4: Implementierung erstellen und testen
Lokales Testen
So testen Sie Ihre Implementierung, ohne die App zuerst verteilen zu müssen:
Aktivieren Sie den Entwicklermodus auf Ihrem lokalen Gerät:
adb shell setprop debug.firebase.appdistro.devmode true
Erstellen Sie Ihre App als Vorabversion, die die vollständigen App Distribution-Bibliotheken enthält, und testen Sie, ob Sie Feedback über den in Schritt 3: In-App-Feedback konfigurieren implementierten Mechanismus auslösen können. Im Entwicklermodus wird kein Feedback gesendet.
Nach dem Testen können Sie den Entwicklermodus auf Ihrem Gerät deaktivieren:
adb shell setprop debug.firebase.appdistro.devmode false
End-to-End-Tests
Wenn Sie testen möchten, ob Ihre App Feedback senden kann, erstellen Sie sie als Vorabversion, die die vollständigen App Distribution-Bibliotheken enthält, und testen Sie Ihre Implementierung so:
Laden Sie einen neuen App‑Release in App Distribution hoch.
Stellen Sie die App-Version über ein Konto bereit, auf das Sie Zugriff haben.
Laden Sie die App über die Web- oder Android-Tester-App von App Distribution herunter.
Lösen Sie Feedback über den Mechanismus aus, der in Schritt 3: In-App-Feedback konfigurieren implementiert wurde.
Sie müssen mit demselben Konto angemeldet sein, über das Sie die App-Version verteilt haben, um Feedback zu geben.
Sie können sich das Feedback in der Karte des neuen Release in der Firebase-Konsole ansehen.
Informationen zum Beheben häufiger Probleme, z. B. wenn Tester kein Feedback in der App geben können, finden Sie unter Testfunktionen mit dem SDK aktivieren.
Schritt 5: Tester-Feedback verwalten
Nachdem Sie Ihren Testern die Möglichkeit gegeben haben, Feedback zu senden, können Sie dieses Feedback mit den folgenden Tools prüfen und darauf reagieren:
Feedback in der Firebase-Konsole ansehen und löschen
Sie können Nutzerfeedback, einschließlich Screenshots, auf dem Tab Tester-Feedback unter einer bestimmten Version in der Firebase Console ansehen und löschen. Das Nutzerfeedback ist nach Version organisiert, sodass Sie die Version sehen können, auf die sich das Feedback bezieht.
Nachdem Sie das Nutzer-Feedback gelesen haben, können Sie es löschen, indem Sie auf die Schaltfläche Feedback löschen klicken. Das gelöschte Feedback wird aus Ihrem Release entfernt.
E-Mail-Benachrichtigungen für neues Feedback erhalten
Wenn Sie proaktiv über neues Testerfeedback informiert werden möchten, können Sie E‑Mail-Benachrichtigungen erhalten, wenn ein Tester Feedback sendet. Die E-Mail-Benachrichtigung enthält das schriftliche Feedback des Testers und einen Link zu allen Screenshots, die er eingereicht hat.
Wenn Sie App Distribution-E‑Mail-Benachrichtigungen über diesen Standardmechanismus erhalten möchten, benötigen Sie die Berechtigung firebase.projects.update
. Die folgende Rolle enthält diese erforderliche Berechtigung standardmäßig: Firebase-Administrator oder Projektinhaber oder -bearbeiter.
Standardmäßig erhält jedes Projektmitglied mit den erforderlichen Berechtigungen zum Empfangen von E‑Mail-Benachrichtigungen eine E‑Mail, wenn ein neuer Feedbackbericht eingereicht wird. Projektmitglieder können diese Benachrichtigungen einzeln deaktivieren.
Informationen zum Deaktivieren von E-Mail-Benachrichtigungen finden Sie unter Firebase-Benachrichtigungen erhalten.
Neues Feedback an Drittanbietertools senden
Sie können App Distribution-Benachrichtigungen auch über Cloud Functions for Firebase an den bevorzugten Benachrichtigungskanal Ihres Teams senden. Sie können beispielsweise eine Funktion schreiben, die ein Benachrichtigungsereignis für neues In-App-Feedback erfasst und die Benachrichtigungsinformationen an einen Drittanbieterdienst wie Discord, Slack oder Jira sendet.
So richten Sie erweiterte Benachrichtigungsfunktionen mit Cloud Functions for Firebase ein:
Cloud Functions for Firebase einrichten – umfasst die folgenden Aufgaben:
Laden Sie Node.js und npm herunter.
Installieren Sie die Firebase-Befehlszeile und melden Sie sich an.
Initialisieren Sie Cloud Functions for Firebase mit der Firebase-Befehlszeile.
Funktion schreiben und bereitstellen, die ein In-App-Feedback-Benachrichtigungsereignis von App Distribution erfasst und die Ereignisnutzlast verarbeitet (z. B. die Benachrichtigungsinformationen in einer Nachricht auf Discord postet).
Ein Beispiel für eine Funktion, mit der Sie neues Feedback an Jira senden können, finden Sie hier.
Informationen zu allen Benachrichtigungsereignissen, die Sie erfassen können, finden Sie in der Referenzdokumentation zu App Distribution-Benachrichtigungen.