In diesem Dokument werden Best Practices für die Verwendung von Firebase App Distribution vorgestellt, um Ihre Workflows für Vorabveröffentlichungstests für Android in einer CI/CD-Umgebung nachhaltig und wiederholbar zu gestalten. Zu den Lösungen gehören Gradle und fastlane. Für noch mehr Flexibilität bieten wir aber auch Lösungen an, die über die Firebase Console, die Firebase-Befehlszeile und die öffentliche Firebase App Distribution API verfügbar sind. Außerdem beschreiben wir die Limits für Releases und Tester, damit Sie im Voraus planen und die bestmögliche Nutzererfahrung bieten können.
Wenn Sie auch Apple-Plattformen verwenden, lesen Sie den Hilfeartikel Best Practices für die Bereitstellung von Apple-Apps für QA-Tester mit CI/CD und fastlane.
Hinweis
Bevor Sie die Best Practices in diesem Dokument implementieren, müssen Sie App Distribution in der Firebase-Konsole für jede App aktivieren. Wenn Sie App Distribution nicht aktiviert haben, erhalten Sie einen 404-Fehler.
So aktivieren Sie App Distribution:
- Öffnen Sie in der Firebase Console die Seite App Distribution.
- Wählen Sie Ihre Android-App aus.
- Klicken Sie auf Jetzt starten.
Da Android App Bundles (AAB) immer mehr zum gängigen Android-Paketformat werden, empfehlen wir, die Möglichkeit zur Verteilung von AABs an Ihre Tester einzurichten, indem Sie eine Verknüpfung mit Google Play herstellen.
Workflow für Tests vor der Veröffentlichung mit einer CI/CD-Pipeline automatisieren
Wenn Sie das Erstellen und Veröffentlichen von Apps für Ihre Tester automatisieren möchten und CI/CD verwenden, empfehlen wir die Verwendung von fastlane oder Gradle. Eine weitere Möglichkeit ist die Verwendung der Firebase-Befehlszeile, mit der Sie auf eine Vielzahl von Firebase-Produkten zugreifen können.
Fastlane verwenden
Integrieren Sie App Distribution in Ihre CI/CD-Pipeline mit fastlane, einem Open-Source-Tool, das die Erstellung und Veröffentlichung von iOS- und Android-Apps automatisiert. Wenn Sie Ihre neuesten Releases automatisch erstellen und an Tester verteilen, haben diese immer die aktuellste Testversion Ihrer App.
Informationen zum Einbinden von App Distribution in fastlane finden Sie unter Android-Apps mit fastlane an Tester verteilen.
Gradle verwenden
Verwenden Sie Gradle, um App Distribution mit dem App Distribution-Gradle-Plug-in in Ihren Android-Build-Prozess einzubinden. Mit dem Plug-in können Sie Ihre Tester und Versionshinweise in der build.gradle-Datei Ihrer App angeben. So können Sie Distributionen für verschiedene Build-Typen und Varianten Ihrer App konfigurieren.
Informationen zum Einbinden von App Distribution in Gradle finden Sie unter Android-Apps mit Gradle an Tester verteilen.
Firebase CLI verwenden
Verwenden Sie die Firebase-Befehlszeilentools, die App Distribution bereitstellt, um Builds programmatisch an Tester zu verteilen. Sie können Tester und Versionshinweise für einen Build angeben.
Verteilen Sie Ihren neuesten Android-Build, indem Sie die Firebase-App-ID der App angeben. Optional können Sie Versionshinweise und eine Datei mit den E-Mail-Adressen der Tester hinzufügen:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Weitere Informationen zur Verwendung der Firebase-Befehlszeile zum Automatisieren Ihrer Builds finden Sie unter Android-Apps mit der Firebase-Befehlszeile an Tester verteilen.
Dienst-Anmeldedaten zur Authentifizierung verwenden
Verwenden Sie das App Distribution fastlane-Plug-in, das Gradle-Plug-in oder die Firebase-Befehlszeile mit Dienstkonten. Ein Dienstkonto ist ein Google-Konto, das Anwendungen (im Gegensatz zu Nutzern) repräsentiert. Ihr CI-System kann Dienstkonten verwenden, um Ihre App Distribution-Arbeitslasten auszuführen. Weitere Informationen finden Sie unter Mit einem Dienstkonto authentifizieren.
Wenn Sie die Workload Identity-Föderation verwenden, können Sie anstelle eines Dienstkontoschlüssels eine Konfigurationsdatei für Anmeldedaten generieren und verwenden.
Release-Limits beachten
App Distribution unterstützt maximal 1.000 Releases pro App. Wenn Sie das Release-Limit überschreiten,löscht App Distribution automatisch die ältesten Releases, die das Limit überschreiten. Informationen zum Verwalten von Release-Limits finden Sie unter Wie lange sind App-Releases verfügbar?.
Dieselben Tester zu mehreren Releases hinzufügen
Wenn Sie Ihren Releases eine große Anzahl von Testerinnen und Testern hinzufügen möchten, verwenden Sie die Funktion zur Bulk-Verwaltung von Testerinnen und Testern in App Distribution.
Wir empfehlen, Gruppen zu verwenden, um dieselben Tester mehreren Releases hinzuzufügen. Eine Gruppe fungiert als Zugriffssteuerungsliste. Wenn Sie einen Tester aus einer Gruppe entfernen, verliert er den Zugriff auf alle Releases, die an diese Gruppe verteilt wurden. Weitere Informationen finden Sie unter Tester zu einer Gruppe hinzufügen und daraus entfernen.
Wenn Sie viele Tester verwalten müssen, können Sie mit der Firebase Console Tester im Bulk hinzufügen und löschen. Wenn Sie das Hinzufügen und Entfernen von Testern automatisieren möchten, verwenden Sie die Firebase-Befehlszeile, fastlane, Gradle oder die öffentliche Firebase App Distribution API.
Testerlimits beachten
App Distribution begrenzt die Anzahl der Tester, die Sie einem Firebase-Projekt oder einer App Distribution-Gruppe hinzufügen können. Wenn Sie diese Limits überschreiten, können Sie Ihre App nicht mehr an zusätzliche Tester verteilen. Weitere Informationen zu Testerlimits finden Sie unter Gibt es Limits für das Hinzufügen von Testern zu meiner App?
Potenziellen Testern die Möglichkeit geben, sich selbst für Tests zu registrieren
Damit Sie Ihre App leichter an mehr Tester verteilen können, empfehlen wir die Verwendung von Einladungslinks. Ein Einladungslink ist eine eindeutige URL, über die Tester ihre E‑Mail-Adresse eingeben können, um sich für den Test einer App zu registrieren. Wenn du Nutzern die Möglichkeit gibst, sich selbst in deine Liste der App-Tester einzutragen, kannst du die Anzahl der internen Tester ganz einfach erhöhen.
Zu den Anwendungsfällen für Einladungslinks gehören Dogfood-Programme von Unternehmen, Organisationen mit großen QA-Teams und Entwicklergruppen, die einzelnen Kunden die Möglichkeit geben möchten, den Testerzugriff zu steuern.
Wir empfehlen, einen Einladungslink für eine Gruppe zu erstellen. Alle Tester, die sich über den Einladungslink registrieren, werden automatisch zu nachfolgenden Releases hinzugefügt.
Weitere Informationen finden Sie unter Einladungslinks erstellen und Tester zu einer Gruppe hinzufügen und daraus entfernen.
Achten Sie darauf, dass die Tester die Version testen, die Sie interessiert.
Wenn eine neue Version hochgeladen wird, werden Ihre Tester per E-Mail benachrichtigt. Zusätzlich zu dieser Benachrichtigung können Sie die folgenden Funktionen verwenden, um sicherzustellen, dass Ihre Tester die gewünschte App-Version testen:
- Releaselinks:Verwenden Sie diese Funktion, wenn Sie eine bestimmte Version mit Testern teilen möchten. Informationen zur Verwendung von Release-Links finden Sie unter Android-Apps über die Firebase Console an Tester verteilen. Diese Links sind auch mit unseren Befehlszeilentools (CLI) für Firebase, fastlane und Gradle verfügbar, die Sie mit Ihren Build-Automatisierungstools verwenden können.
- In-App-Benachrichtigungen:Verwende diese Benachrichtigungen, wenn du sicherstellen möchtest, dass deine Tester die neueste Version deiner App testen. Wenn du das Firebase App Distribution Android SDK einbindest, kannst du deinen Testern direkt in der App Benachrichtigungen anzeigen lassen, wenn neue Builds deiner App verfügbar sind. Informationen zum Hinzufügen von In-App-Benachrichtigungen finden Sie unter Tester über neue Builds benachrichtigen.
Zugriff für Tester, die das Unternehmen verlassen, automatisch entfernen
Wenn Ihr interner CI/CD-Testablauf eingerichtet ist, müssen Sie dafür sorgen, dass Personen, die das Unternehmen verlassen, keinen Zugriff mehr auf Ihre internen Builds haben. App Distribution bietet die folgenden Optionen, um den Zugriff von Testern auf Builds zu verwalten:
- fastlane:Verwenden Sie Ihre Fastfile-Datei oder führen Sie fastlane-Aktionen direkt aus. Weitere Informationen finden Sie unter Android-Apps mit fastlane an Tester verteilen.
- Firebase-CLI: Verwenden Sie die Aktion
firebase appdistribution:testers:remove. Weitere Informationen finden Sie unter Android-Apps mit der Firebase-Befehlszeile an Tester verteilen. - Gradle:Wenn Sie Tester mit Gradle entfernen, übergeben Sie
appDistributionRemoveTestersmit den Argumentenund--PROJECT_NUMBER in Ihrer--EMAILS build.gradle-Datei. Weitere Informationen finden Sie unter Android-Apps mit Gradle an Tester verteilen. - **Öffentliche Firebase App Distribution API:** Verwenden Sie den Endpunkt
testers.batchRemove.