1. Przegląd

Witamy w samouczku dotyczącym integrowania pakietu SDK Rozpowszechniania aplikacji przez Firebase z aplikacją na Androida. W tym samouczku dodasz do aplikacji pakiet SDK Rozpowszechnianie aplikacji na Androida, aby wyświetlać testerom w aplikacji alerty o dostępności nowych wersji do pobrania. Dowiesz się, jak używać konfiguracji podstawowej i niestandardowej, aby testerzy mogli się zalogować i otrzymywać aktualizacje. Następnie możesz przesłać nową wersję do usługi Rozpowszechnianie aplikacji i wywołać alert o nowej kompilacji bezpośrednio w aplikacji.
Czego się nauczysz
- Jak używać usługi Rozpowszechnianie aplikacji do wysyłania przedpremierowej aplikacji do testerów
- Integrowanie pakietu SDK Rozpowszechniania aplikacji na Androida z aplikacją
- Jak powiadomić testera o nowej kompilacji przedpremierowej gotowej do zainstalowania
- Dostosowywanie pakietu SDK do potrzeb testowych
Czego potrzebujesz
- Najnowsza wersja Android Studio.
- Przykładowy kod.
- Urządzenie testowe z Androidem 4.4 lub nowszym i Usługami Google Play w wersji 9.8 lub nowszej albo emulator z Usługami Google Play w wersji 9.8 lub nowszej.
- Jeśli używasz urządzenia, kabel połączeniowy.
Jak zamierzasz korzystać z tego samouczka?
Jak oceniasz swoje doświadczenie w tworzeniu aplikacji na Androida?
2. Pobieranie przykładowego kodu
Sklonuj repozytorium GitHub z wiersza poleceń.
$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git
Jeśli nie masz zainstalowanego narzędzia git, możesz też pobrać przykładowy projekt ze strony GitHub lub klikając ten link.
3. Importowanie aplikacji startowej
W Android Studio wybierz katalog codelab-appdistribution-android/start (
) z pobranego kodu przykładowego (Plik > Otwórz > .../codelab-appdistribution-android/start).
Projekt początkowy powinien być teraz otwarty w Android Studio.
4. Tworzenie i konfigurowanie projektu w Firebase
Tworzenie nowego projektu w Firebase
- Zaloguj się w konsoli Firebase, korzystając ze swojego konta Google.
- Kliknij przycisk, aby utworzyć nowy projekt, a następnie wpisz jego nazwę (np.
App Distribution Codelab). - Kliknij Dalej.
- Po wyświetleniu monitu zapoznaj się z warunkami usługi Firebase i zaakceptuj je, a potem kliknij Dalej.
- (Opcjonalnie) Włącz w konsoli Firebase pomoc AI (nazywaną „Gemini w Firebase”).
- W tym samouczku nie potrzebujesz Google Analytics, więc wyłącz opcję Google Analytics.
- Kliknij Utwórz projekt, poczekaj, aż projekt zostanie udostępniony, a następnie kliknij Dalej.
Dodawanie aplikacji do Firebase
Zarejestruj aplikację w Firebase. Użyj nazwy pakietu „com.google.firebase.appdistributioncodelab”.
Dodawanie pliku google-services.json do aplikacji
Po dodaniu nazwy pakietu i kliknięciu Zarejestruj wykonaj te czynności, aby dodać plik google-services.json do aplikacji:
- Kliknij Pobierz plik google-services.json, aby pobrać plik konfiguracyjny Firebase na Androida.
- Skopiuj plik google-services.json do katalogu
appw projekcie. - Po pobraniu pliku możesz pominąć kolejne kroki wyświetlane w konsoli (zostały już wykonane w projekcie build-android-start).
Zaktualizuj identyfikator aplikacji, aby pasował do aplikacji w Firebase
- W menu po lewej stronie (karta Projekt) upewnij się, że jesteś w widoku „Android”, a następnie znajdź kartę „Skrypty Gradle” i otwórz plik Gradle na poziomie modułu (aplikacji) (zwykle
app/build.gradle.kts). - Zmień właściwość
applicationId, aby pasowała do identyfikatora aplikacji w Firebase. Powinien to być ciąg „com.google.firebase.appdistributioncodelab”.
Synchronizowanie projektu z plikami Gradle
Aby mieć pewność, że wszystkie zależności są dostępne dla aplikacji, zsynchronizuj projekt z plikami Gradle, wybierając Plik > Synchronizuj projekt z plikami Gradle na pasku narzędzi Android Studio.
5. Konfigurowanie alertów w aplikacji o nowych wersjach za pomocą pakietu SDK Rozpowszechniania aplikacji na Androida
W tym kroku dodasz do aplikacji pakiet Android SDK Rozpowszechniania aplikacji przez Firebase i będziesz wyświetlać testerom w aplikacji alerty o dostępności nowych wersji aplikacji do zainstalowania. Aby to zrobić, włącz Firebase App Testers API w projekcie „Firebase Codelab” (w konsoli Google Cloud). Musisz zalogować się na to samo konto i wybrać właściwy projekt z menu u góry.
Konfigurowanie alertów w aplikacji
Pakiet SDK Rozpowszechniania aplikacji na Androida udostępnia 2 sposoby konfigurowania alertów o kompilacji w aplikacji dla testerów:
- Podstawowa konfiguracja alertu, która zawiera gotowe okno do wyświetlania testerom.
- zaawansowaną konfigurację alertów, która umożliwia dostosowanie interfejsu;
Zaczniemy od podstawowej konfiguracji alertu. Możesz użyć updateIfNewReleaseAvailable, aby wyświetlić gotowe okno dialogowe włączania alertów testerom, którzy jeszcze nie włączyli alertów, a następnie sprawdzić, czy jest dostępna nowa kompilacja. Testerzy włączają alerty, logując się na konto, które ma dostęp do aplikacji w Rozpowszechnianiu aplikacji. Po wywołaniu metoda wykonuje następującą sekwencję:
- Sprawdza, czy tester włączył alerty. W przeciwnym razie wyświetli gotowe okno, w którym testerzy będą mogli zalogować się w Rozpowszechnianiu aplikacji za pomocą konta Google.
Włączenie alertów to jednorazowy proces na urządzeniu testowym, który jest zachowywany po aktualizacjach aplikacji. Alerty pozostają włączone na urządzeniu testowym do momentu odinstalowania aplikacji lub wywołania metody signOutTester.
- Sprawdza, czy są dostępne nowe wersje do zainstalowania przez testera.
- Wyświetla gotowy alert z prośbą o pobranie najnowszej wersji.
- Sprawdza nowy rodzaj kompilacji przed rozpoczęciem aktualizacji:
- Jeśli nowa kompilacja jest pakietem aplikacji (AAB), przekierowuje testera do Sklepu Play, aby dokończyć proces aktualizacji.
- Jeśli nowa kompilacja jest plikiem APK, pakiet SDK pobiera ją w tle i po zakończeniu pobierania wyświetla testerowi prośbę o jej zainstalowanie. Pakiet SDK wysyła do użytkownika powiadomienia o postępie pobierania za pomocą funkcji
NotificationManager.. Możesz dodać własny wskaźnik postępu, dołączając moduł obsługionProgressUpdatedo zadaniaupdateIfNewReleaseAvailable.
Możesz wywołać funkcję updateIfNewReleaseAvailable() w dowolnym momencie w aplikacji. Możesz to na przykład zrobić w metodzie onResume() klasy MainActivity:updateIfNewReleaseAvailable()
Otwórz plik MainActivity.kt i utwórz metodę onResume() w ten sposób:
MainActivity.kt
override fun onResume() {
super.onResume()
checkForUpdate()
}
Teraz zaimplementujmy metodę 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. Tworzenie aplikacji i zapraszanie testerów do jej pobrania
W tym kroku skompilujesz aplikację i przetestujesz implementację, rozpowszechniając kompilację wśród testerów za pomocą konsoli Firebase.
Tworzenie aplikacji
Gdy będziesz gotowy(-a) do rozpowszechniania przedpremierowej wersji aplikacji wśród testerów, utwórz plik APK w zwykły sposób. Plik APK musi być podpisany kluczem debugowania lub kluczem podpisywania aplikacji.
Udostępnianie aplikacji testerom
Aby rozpowszechnić aplikację wśród testerów, prześlij plik APK za pomocą konsoli Firebase:
- Otwórz stronę Rozpowszechnianie aplikacji w konsoli Firebase. Gdy pojawi się prośba, wybierz projekt w Firebase.
- Na stronie Wersje wybierz z menu aplikację, którą chcesz rozpowszechniać.

- Kliknij Rozpocznij.

- Przeciągnij plik APK aplikacji do konsoli, aby go przesłać.
- Po zakończeniu przesyłania określ grupy testerów i poszczególnych testerów, którzy mają otrzymać kompilację. (Dodaj swój adres e-mail, aby otrzymać zaproszenie). Następnie dodaj informacje o wersji. Więcej informacji o tworzeniu grup testerów znajdziesz w artykule Dodawanie i usuwanie testerów.

- Kliknij Dystrybuuj, aby udostępnić kompilację testerom.

W konsoli Firebase możesz teraz zobaczyć dodanych testerów w sekcji wersji aplikacji.

Ponieważ podano adres e-mail, otrzymasz e-maila z Rozpowszechniania aplikacji przez Firebase z zaproszeniem do testowania aplikacji. Jesteś pierwszym testerem. Postępuj zgodnie z instrukcjami w artykule Akceptowanie zaproszenia, aby skonfigurować urządzenie testowe jako tester.
Zaakceptuj zaproszenie
Najpierw musisz zaakceptować zaproszenie, aby pobrać i przetestować wersję.
- Na urządzeniu testowym z Androidem otwórz e-maila wysłanego z Rozpowszechniania aplikacji przez Firebase i kliknij Rozpocznij.
- W wyświetlonej aplikacji internetowej Rozpowszechnianie aplikacji przez Firebase dla testerów zaloguj się na konto Google i kliknij Zaakceptuj zaproszenie. Teraz możesz zobaczyć wersję, do której testowania masz zaproszenie.

Pobieranie wersji na urządzenie testowe
Gdy przejdziesz do aplikacji z ćwiczeń z programowania App Distribution, zobaczysz, że wersja jest gotowa do pobrania.

- Kliknij Pobierz, a potem zainstaluj i uruchom aplikację.
- Po uruchomieniu aplikacja poprosi Cię o włączenie alertów o nowych wersjach. Kliknij Włącz.

- Zaloguj się na konto testera.

Wrócisz do aplikacji. Następnym razem, gdy ją uruchomisz, nie musisz się logować ani akceptować alertów.

Przekazywanie aktualizacji testerom
- Zaktualizuj versionName do „1.1” i versionCode do 2 w pliku Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle).
- Utwórz plik APK w zwykły sposób. Plik APK musisz podpisać kluczem debugowania lub kluczem podpisywania aplikacji.
- Prześlij nowy plik APK w konsoli Firebase, ponownie dodaj swój adres e-mail jako tester i kliknij Rozpowszechnij.

Alerty dotyczące kompilacji testowej
- Jeśli aplikacja była otwarta, zamknij ją.
- Uruchom ponownie aplikację.
- Po ponownym uruchomieniu aplikacji otrzymasz alert „Dostępna jest nowa wersja”.

- Aby otrzymać najnowszą wersję, kliknij Aktualizuj.
- Jeśli pojawi się odpowiedni komunikat, wybierz opcję zezwalającą na instalowanie aplikacji z nieznanych źródeł.
- Na następnym ekranie kliknij Zainstaluj (lub Zaktualizuj).

- Gratulacje! Udało Ci się zaktualizować aplikację za pomocą wbudowanych alertów.
7. Dostosowywanie logowania testerów
Metody signInTester/signOutTester i isTesterSignedIn zapewniają większą elastyczność w dostosowywaniu procesu logowania testera, dzięki czemu może on lepiej pasować do wyglądu i stylu aplikacji.
Poniższy przykład sprawdza, czy tester zalogował się już na swoje konto testera w Rozpowszechnianiu aplikacji przez Firebase. Dzięki temu możesz wyświetlać interfejs logowania tylko testerom, którzy jeszcze się nie zalogowali. Gdy tester się zaloguje, możesz wywołać funkcję checkForUpdate, aby sprawdzić, czy ma dostęp do nowej wersji.
Wyłączmy automatyczne sprawdzanie aktualizacji w funkcji onResume, komentując wywołanie checkForUpdate().
MainActivity.kt
override fun onResume() {
super.onResume()
//checkForupdate()
}
Zamiast tego funkcja checkForUpdate() jest już dodana w funkcji OnClickListener przycisku updatebutton.
Teraz zaimplementujmy metodę signIn(), która zaloguje użytkownika, jeśli jest wylogowany, lub wyloguje go, jeśli jest już zalogowany.
MainActivity.kt
private fun signIn() {
if (isTesterSignedIn()) {
firebaseAppDistribution.signOutTester()
configureUpdateButton()
configureSigninButton()
} else {
firebaseAppDistribution.signInTester()
}
}
Na koniec zaimplementuj metodę isTesterSignedIn.
MainActivity.kt
private fun isTesterSignedIn() : Boolean {
return firebaseAppDistribution.isTesterSignedIn
}
Tworzenie i testowanie implementacji
8. Gratulacje!
Funkcja „wyświetlanie alertów w aplikacji” została wbudowana w aplikację za pomocą pakietu SDK Rozpowszechniania aplikacji przez Firebase na Androida.
Omówione zagadnienia
- Rozpowszechnianie aplikacji przez Firebase
- Firebase App Distribution New Alerts Android SDK
Następne kroki
Więcej informacji
Masz pytanie?
Zgłaszanie problemów