Benachrichtigen Sie Tester über Ihre neuen App-Releases mit dem Firebase App Distribution Android SDK – Codelab

1. Übersicht

c7a9160ef7b184c7.png22e0b52f771c060d.png

Willkommen beim Codelab „Integration des Firebase App Distribution SDK in Ihr Android-App-Codelab“. In diesem Codelab fügen Sie das App Distribution Android SDK zu Ihrer App hinzu, um Ihren Testern In-App-Benachrichtigungen anzuzeigen, wenn neue Builds zum Herunterladen verfügbar sind. Sie erfahren, wie Sie sowohl eine Basiskonfiguration als auch eine benutzerdefinierte Konfiguration verwenden, um Ihre Tester für den Empfang von Updates anzumelden. Anschließend übertragen Sie eine neue Version an App Distribution und lösen direkt in der App eine neue Build-Benachrichtigung aus.

Was Sie lernen werden

  • So verwenden Sie App Distribution, um eine Vorabversion einer App an Tester zu verteilen
  • So integrieren Sie das App Distribution Android SDK in Ihre App
  • So benachrichtigen Sie einen Tester, wenn ein neuer Vorabversions-Build zur Installation bereitsteht
  • So passen Sie das SDK an Ihre Testanforderungen an

Was du brauchen wirst

  • Neueste Android Studio- Version.
  • Beispielcode.
  • Ein Testgerät mit Android 4.4+ und Google Play-Diensten 9.8 oder höher oder ein Emulator mit Google Play-Diensten 9.8 oder höher.
  • Bei Verwendung eines Gerätes ein Verbindungskabel.

Wie werden Sie dieses Tutorial nutzen?

Lesen Sie es nur durch Lesen Sie es und absolvieren Sie die Übungen

Wie würden Sie Ihre Erfahrungen mit der Entwicklung von Android-Apps bewerten?

Anfänger Dazwischenliegend Kompetent

2. Holen Sie sich den Beispielcode

Klonen Sie das GitHub-Repository über die Befehlszeile.

$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git

Wenn Sie Git nicht installiert haben, können Sie das Beispielprojekt auch von der GitHub-Seite herunterladen oder auf diesen Link klicken.

3. Importieren Sie die Starter-App

Wählen Sie in Android Studio das Verzeichnis codelab-appdistribution-android/start aus ( android_studio_folder.png ) aus dem Beispielcode-Download ( Datei > Öffnen > .../codelab-appdistribution-android/start).

Sie sollten nun das Startprojekt in Android Studio geöffnet haben.

4. Erstellen Sie ein Firebase-Konsolenprojekt

Fügen Sie ein neues Firebase-Projekt hinzu

  1. Öffnen Sie die Firebase-Konsole .
  2. Wählen Sie Projekt hinzufügen aus und nennen Sie Ihr Projekt dann „Firebase Codelab“.

Sie müssen Google Analytics für dieses Projekt nicht aktivieren.

  1. Klicken Sie auf Projekt erstellen .

Fügen Sie Firebase eine App hinzu

Registrieren Sie Ihre App bei Firebase . Verwenden Sie „com.google.firebase.appdistributioncodelab“ als Paketnamen.

Fügen Sie Ihrer App die Datei „google-services.json“ hinzu

Nachdem Sie den Paketnamen hinzugefügt und „Registrieren“ ausgewählt haben, führen Sie die folgenden Schritte aus, um google-services.json zu Ihrer App hinzuzufügen:

  1. Klicken Sie auf „Google-services.json herunterladen“, um Ihre Firebase-Android-Konfigurationsdatei zu erhalten.
  2. Kopieren Sie die Datei google-services.json in das app Verzeichnis Ihres Projekts.
  3. Nachdem die Datei heruntergeladen wurde, können Sie die nächsten in der Konsole angezeigten Schritte überspringen (sie wurden bereits im Build-Android-Start-Projekt für Sie erledigt).

Aktualisieren Sie die Anwendungs-ID so, dass sie mit Ihrer Firebase-App übereinstimmt

  1. Stellen Sie sicher, dass Sie sich im linken Menü (Registerkarte „Projekt“) in der „Android“-Ansicht befinden, suchen Sie die Registerkarte „Gradle-Skripte“ und öffnen Sie die Gradle-Datei Ihres Moduls (App-Ebene) (normalerweise app/build.gradle.kts ).
  2. Ändern Sie die applicationId Eigenschaft so, dass sie mit der Anwendungs-ID Ihrer Firebase-App übereinstimmt. Dies sollte „com.google.firebase.appdistributioncodelab“ sein.

Synchronisieren Sie Ihr Projekt mit Gradle-Dateien

Um sicherzustellen, dass alle Abhängigkeiten für Ihre App verfügbar sind, synchronisieren Sie Ihr Projekt mit Gradle-Dateien, indem Sie in der Android Studio-Symbolleiste Datei > Projekt mit Gradle-Dateien synchronisieren auswählen .

5. Richten Sie mit dem App Distribution Android SDK In-App-Benachrichtigungen zu neuen Builds ein

In diesem Schritt fügen Sie das Firebase App Distribution Android SDK zu Ihrer App hinzu und zeigen Ihren Testern In-App-Benachrichtigungen an, wenn neue Builds Ihrer App zur Installation verfügbar sind. Stellen Sie dazu sicher, dass Sie die Firebase App Testers API für Ihr „Firebase Codelab“-Projekt aktiviert haben (in der Google Cloud Console). Sie müssen sich mit demselben Konto anmelden und im Dropdown-Menü oben das richtige Projekt auswählen.

Konfigurieren Sie In-App-Benachrichtigungen

Das App Distribution Android SDK bietet zwei Möglichkeiten zum Einrichten von In-App-Build-Benachrichtigungen für Ihre Tester:

  • Eine grundlegende Alarmkonfiguration, die einen vorgefertigten Dialog enthält, der den Testern angezeigt wird.
  • Eine erweiterte Alarmkonfiguration, mit der Sie Ihre Benutzeroberfläche (UI) anpassen können.

Wir beginnen mit der grundlegenden Alarmkonfiguration. Sie können updateIfNewReleaseAvailable verwenden, um Testern, die noch keine Warnungen aktiviert haben, ein vorgefertigtes Dialogfeld zum Aktivieren von Warnungen anzuzeigen und dann zu prüfen, ob ein neuer Build verfügbar ist. Tester aktivieren Warnungen, indem sie sich bei einem Konto anmelden, das Zugriff auf die App in App Distribution hat. Beim Aufruf führt die Methode die folgende Sequenz aus:

  1. Überprüft, ob ein Tester Warnungen aktiviert hat. Wenn nicht, zeigt die Methode ein vorgefertigtes Dialogfeld an, das Tester auffordert, sich mit ihrem Google-Konto bei App Distribution anzumelden.

Das Aktivieren von Warnungen ist ein einmaliger Vorgang auf dem Testgerät, der über alle Aktualisierungen Ihrer App hinweg bestehen bleibt. Warnungen bleiben auf dem Testgerät aktiviert, bis die App deinstalliert wird oder bis die signOutTester Methode aufgerufen wird.

  1. Sucht nach neu verfügbaren Builds, die der Tester installieren kann.
  2. Zeigt eine vorgefertigte Warnung an, die den Tester auffordert, die neueste Version herunterzuladen.
  3. Überprüft den neuen Build-Typ, bevor mit dem Update fortgefahren wird:
  4. Wenn es sich bei dem neuen Build um ein App Bundle (AAB) handelt, wird der Tester zum Play Store weitergeleitet, um den Aktualisierungsvorgang abzuschließen.
  5. Wenn es sich bei dem neuen Build um ein APK handelt, lädt das SDK den neuen Build im Hintergrund herunter und fordert den Tester auf, den neuen Build zu installieren, wenn der Download abgeschlossen ist. Das SDK sendet mithilfe von NotificationManager. Sie können Ihren eigenen Fortschrittsindikator hinzufügen, indem Sie einen onProgressUpdate Handler an die updateIfNewReleaseAvailable -Aufgabe anhängen.

Sie können updateIfNewReleaseAvailable() jederzeit in Ihrer App aufrufen. Sie können beispielsweise updateIfNewReleaseAvailable() während der onResume() Methode der MainActivity aufrufen:

Öffnen Sie MainActivity.kt und erstellen Sie die Methode onResume() wie folgt:

MainActivity.kt

override fun onResume() {
    super.onResume()
    checkForUpdate()
}

Jetzt implementieren wir die Methode checkForUpdate() .

MainActivity.kt

   private fun checkForUpdate() {
        firebaseAppDistribution.updateIfNewReleaseAvailable()
            .addOnProgressListener { updateProgress ->
                // (Optional) Implement custom progress updates in addition to
                // automatic NotificationManager updates.
            }
            .addOnFailureListener { e ->
                if (e is FirebaseAppDistributionException) {
                    // Handle exception.
                }
            }
    }

6. Erstellen Sie Ihre App und laden Sie Tester ein, sie herunterzuladen

In diesem Schritt erstellen Sie Ihre App und testen Ihre Implementierung, indem Sie den Build über die Firebase-Konsole an Tester verteilen .

Erstellen Sie Ihre App

Wenn Sie bereit sind, eine Vorabversion Ihrer App an Tester zu verteilen, erstellen Sie Ihr APK wie gewohnt. Sie müssen das APK mit Ihrem Debug-Schlüssel oder App-Signaturschlüssel signieren.

Verteilen Sie Ihre App an Tester

Um Ihre App an Tester zu verteilen, laden Sie die APK-Datei über die Firebase-Konsole hoch:

  1. Öffnen Sie die Seite „App-Verteilung“ der Firebase-Konsole. Wählen Sie Ihr Firebase-Projekt aus, wenn Sie dazu aufgefordert werden.
  2. Wählen Sie auf der Seite „Releases“ aus dem Dropdown-Menü die App aus, die Sie verteilen möchten.

623460c3c8a82ce6.png

  1. Klicken Sie auf „Erste Schritte“.

bf503b25066ff4a4.png

  1. Ziehen Sie die APK-Datei Ihrer App auf die Konsole, um sie hochzuladen.
  2. Wenn der Upload abgeschlossen ist, geben Sie die Testergruppen und einzelnen Tester an, die den Build erhalten sollen. (Fügen Sie Ihre E-Mail-Adresse hinzu, um die Einladung zu erhalten.) Fügen Sie dann Versionshinweise für den Build hinzu. Weitere Informationen zum Erstellen von Testergruppen finden Sie unter Tester hinzufügen und entfernen .

3343048f0930e84b.png

  1. Klicken Sie auf „Verteilen“ , um den Build den Testern zur Verfügung zu stellen.

2be58fe195928bf9.png

In der Firebase-Konsole können Sie jetzt die Tester sehen, die Sie unter der Veröffentlichung Ihrer App hinzugefügt haben.

9935a41810344c61.png

Da Sie Ihre E-Mail-Adresse angegeben haben, erhalten Sie eine E-Mail von Firebase App Distribution, in der Sie zum Testen der App eingeladen werden. Du bist jetzt der erste Tester! Befolgen Sie die Anweisungen unter „Einladung annehmen“, um sich als Tester auf Ihrem Testgerät einzurichten.

Die Einladung akzeptieren

Sie müssen zunächst die Einladung zum Herunterladen und Testen der Version annehmen.

  1. Öffnen Sie auf Ihrem Android-Testgerät die von Firebase App Distribution gesendete E-Mail und tippen Sie auf „Erste Schritte“ .
  2. Melden Sie sich in der angezeigten Firebase App Distribution- Tester-Webanwendung mit Ihrem Google-Konto an und tippen Sie auf Einladung annehmen. Sie können jetzt die Version sehen, zu deren Test Sie eingeladen sind.

c18cb684f8e82ad6.png

Laden Sie die Version vom Testgerät herunter

Wenn Sie zur AppDistribution-Codelab-App navigieren, können Sie sehen, dass die Version zum Herunterladen bereit ist.

5414d9a536f25ece.png

  1. Tippen Sie auf „Herunterladen“ , installieren Sie die App und führen Sie sie aus!
  2. Wenn die App startet, werden Sie aufgefordert, neue Build-Benachrichtigungen zu aktivieren. Tippen Sie auf Einschalten .

b059e09acaa4779f.png

  1. Melden Sie sich mit Ihrem Testerkonto an.

22e0b52f771c060d.png

Sie kehren zur App zurück. Wenn Sie die App das nächste Mal ausführen, müssen Sie sich nicht anmelden oder Benachrichtigungen akzeptieren

c9f33df16a2680d.png

Verteilen Sie ein Update an Ihre Tester

  1. Aktualisieren Sie Ihren Versionsnamen auf „1.1“ und Ihren Versionscode auf 2 in der Gradle-Datei Ihres Moduls (App-Ebene) (normalerweise app/build.gradle).
  2. Erstellen Sie Ihr APK mit Ihrem normalen Prozess. Sie müssen das APK mit Ihrem Debug-Schlüssel oder App-Signaturschlüssel signieren.
  3. Laden Sie dieses neue APK in Ihre Firebase-Konsole hoch, fügen Sie Ihre E-Mail-Adresse erneut als Tester hinzu und klicken Sie auf „Verteilen“ .

2dfa702edfdce6b8.png

Testen Sie Build-Benachrichtigungen

  1. Stellen Sie sicher, dass Sie die App geschlossen haben, falls sie geöffnet war.
  2. Starten Sie die App neu.
  3. Wenn die App neu gestartet wird, erhalten Sie die Benachrichtigung „Neue Version verfügbar“.

987e3d0ba4e56f84.png

  1. Um die neueste Version zu erhalten, klicken Sie auf „Aktualisieren“ .
  2. Wenn Sie dazu aufgefordert werden, wählen Sie die Option zum Aktivieren von Installationen aus unbekannten Quellen.
  3. Klicken Sie im nächsten Bildschirm auf „Installieren“ (oder „Aktualisieren“ ).

a7c7cd15d60bc764.png

  1. Glückwunsch! Sie konnten Ihre App mit den integrierten Warnungen aktualisieren.

7. Passen Sie die Tester-Anmeldung an

Die Methoden signInTester/signOutTester und isTesterSignedIn bieten Ihnen mehr Flexibilität bei der Anpassung des Anmeldeerlebnisses Ihres Testers, sodass es besser zum Erscheinungsbild Ihrer App passt.

Im folgenden Beispiel wird überprüft, ob sich der Tester bereits bei seinem Firebase App Distribution-Testerkonto angemeldet hat. Sie können also festlegen, dass Ihre Anmeldeoberfläche nur für Tester angezeigt wird, die sich noch nicht angemeldet haben. Nachdem sich der Tester angemeldet hat, können Sie dies tun Rufen Sie checkForUpdate auf, um zu prüfen, ob der Tester Zugriff auf einen neuen Build hat.

Deaktivieren wir die automatische Überprüfung von Updates in onResume , indem wir den Aufruf checkForUpdate() auskommentieren.

MainActivity.kt

override fun onResume() {
        super.onResume()
        //checkForupdate()
    }

Stattdessen ist checkForUpdate() bereits im OnClickListener von updatebutton hinzugefügt.

Jetzt implementieren wir unsere signIn()- Methode, die den Benutzer anmeldet, wenn er abgemeldet ist, oder den Benutzer abmeldet, wenn er bereits angemeldet ist.

MainActivity.kt

    private fun signIn() {
        if (isTesterSignedIn()) {
            firebaseAppDistribution.signOutTester()
            configureUpdateButton()
            configureSigninButton()
        } else {
            firebaseAppDistribution.signInTester()
        }
    }

Zum Schluss implementieren wir die Methode isTesterSignedIn .

MainActivity.kt

    private fun isTesterSignedIn() : Boolean {
        return firebaseAppDistribution.isTesterSignedIn
    }

Erstellen und testen Sie Ihre Implementierung

8. Herzlichen Glückwunsch!

Sie haben die Funktion „Anzeige von In-App-Benachrichtigungen“ mit dem Firebase App Distribution Android SDK in eine App integriert.

Was wir abgedeckt haben

  • Firebase-App-Verteilung
  • Firebase App Distribution Neue Warnungen Android SDK

Nächste Schritte

Erfahren Sie mehr

Eine Frage haben?

Probleme melden