In diesem Dokument werden Best Practices für die Verwendung von Firebase App Distribution vorgestellt, um Ihre Android-Vorabveröffentlichungstests in einer CI/CD-Umgebung nachhaltig und wiederholbar zu gestalten. Zu den Lösungen gehören Gradle und Fastlane. Um Ihnen noch mehr Flexibilität zu bieten, haben wir auch Lösungen aufgenommen, die über die Firebase Console, die Firebase CLI und die öffentliche Firebase App Distribution API verfügbar sind. Außerdem beschreiben wir die Release- und Testerlimits, damit Sie im Voraus planen können, um eine optimale Nutzung zu ermöglichen.
Wenn Sie auch Apple-Plattformen verwenden, lesen Sie den Artikel Best Practices für die Verteilung von Apple-Apps an 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 Console für jede App aktivieren. Andernfalls erhalten Sie den Fehler 404.App Distribution
So aktivieren Sie App Distribution:
- Öffnen Sie in der Firebase-Konsole die Seite App Distribution.
- Wählen Sie Ihre Android-App aus.
- Klicken Sie auf Jetzt starten.
Da Android App Bundles (AAB) das gängigste Android-Paketformat werden, empfehlen wir Ihnen, die Möglichkeit einzurichten, AABs an Ihre Tester zu verteilen, indem Sie eine Verknüpfung zu Google Play erstellen.
Vorabtests 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 Ihnen, fastlane oder Gradle zu verwenden. Eine weitere Möglichkeit ist die Verwendung der Firebase-CLI, mit der Sie auf eine Vielzahl von Firebase-Produkten zugreifen können.
fastlane verwenden
Sie können App Distribution in Ihre CI/CD-Pipeline einbinden, indem Sie Fastlane verwenden. Fastlane ist ein Open-Source-Tool, mit dem sich das Erstellen und Veröffentlichen von iOS- und Android-Apps automatisieren lässt. Wenn Sie Ihre neuesten Releases automatisch für Tester erstellen und bereitstellen, haben diese immer die aktuelle Testversion Ihrer App.
Informationen zur Integration von App Distribution in fastlane finden Sie unter Android-Apps mit fastlane an Tester verteilen.
Gradle verwenden
Mit Gradle können Sie App Distribution in Ihren Android-Buildprozess einbinden. Verwenden Sie dazu das App Distribution-Gradle-Plug-in. Mit dem Plug-in können Sie Ihre Tester und Versionshinweise in der build.gradle
-Datei Ihrer App angeben. So können Sie Verteilungen für verschiedene Build-Typen und Varianten Ihrer App konfigurieren.
Informationen zum Integrieren von App Distribution in Gradle finden Sie unter Android-Apps mit Gradle an Tester verteilen.
Firebase CLI verwenden
Verwenden Sie die Firebase-CLI-Tools, 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 aktuellen Android-Build, indem Sie die Firebase-App-ID der App angeben und optional eine Versionsanmerkung 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 CLI zum Automatisieren von Builds finden Sie unter Android-Apps mit der Firebase CLI an Tester verteilen.
Dienstkonto-Anmeldedaten zur Authentifizierung verwenden
Verwenden Sie das App Distribution-Fastlane-Plug-in, das Gradle-Plug-in oder die Firebase-CLI mit Dienstkonten. Ein Dienstkonto ist eine Art von 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 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, werden in App Distribution automatisch die ältesten Releases über dem Limit gelöscht. Informationen zum Verwalten von Release-Limits finden Sie unter Wie lange sind App-Releases verfügbar?
Demselben Set von Testern mehrere Releases hinzufügen
Wenn Sie Ihren Releases eine große Anzahl von Testern hinzufügen möchten, verwenden Sie die Funktion zur Verwaltung von 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
Wenn Sie viele Tester verwalten müssen, können Sie Tester im Bulk hinzufügen und löschen. Verwenden Sie dazu die Firebase-Konsole. 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
Mit App Distribution wird die Anzahl der Tester begrenzt, 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 an weitere Tester verteilen. Weitere Informationen zu Testerlimits
Potenziellen Testern die Selbstregistrierung für Tests ermöglichen
Damit Sie Ihre App einfacher an mehr Tester verteilen können, empfehlen wir Ihnen, Einladungslinks zu verwenden. Ein Einladungslink ist eine eindeutige URL, über die Tester ihre E-Mail-Adressen eingeben können, um sich für das Testen einer App zu registrieren. Wenn Sie Nutzern die Möglichkeit geben, sich selbst Ihrer Liste von App-Testern hinzuzufügen, können Sie Ihre interne Testbasis auf einfache Weise erweitern.
Einladungslinks können beispielsweise für interne Testprogramme, Organisationen mit großen QA-Teams und Entwicklergruppen verwendet werden, die es einzelnen Kunden ermöglichen möchten, den Testerzugriff zu verwalten.
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 einer Gruppe hinzufügen und daraus entfernen.
Achten Sie darauf, dass Tester die Version testen, die für Sie wichtig ist.
Wenn eine neue Version hochgeladen wird, werden Ihre Tester per E-Mail benachrichtigt. Um diese Benachrichtigung zu ergänzen, 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 über die Befehlszeilentools (CLI) von Firebase, fastlane und Gradle verfügbar, die Sie mit Ihren Build-Automatisierungstools verwenden können.
- In-App-Benachrichtigungen:Verwenden Sie diese Benachrichtigungen, wenn Sie sicherstellen möchten, dass Ihre Tester die aktuelle Version Ihrer App testen. Wenn Sie das Firebase App Distribution Android SDK einbinden, können Sie Benachrichtigungen direkt in der App für Ihre Tester anzeigen lassen, wenn neue Builds Ihrer 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 Testerzugriff 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-Befehlszeile:Verwenden Sie die Aktion
firebase appdistribution:testers:remove
. Weitere Informationen finden Sie unter Android-Apps mit der Firebase-Befehlszeile für Tester bereitstellen. - Gradle:Wenn Sie Gradle verwenden, um Tester zu entfernen, übergeben Sie
appDistributionRemoveTesters
mit den Argumenten
und--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
testers.batchRemove
-Endpunkt.