W tym dokumencie przedstawiamy sprawdzone metody korzystania z Firebase App Distribution, aby procesy testowania wersji przedpremierowych aplikacji na Androida były trwałe i powtarzalne w środowisku CI/CD. Obejmują one Gradle i fastlane, ale aby zapewnić Ci jeszcze większą elastyczność, udostępniamy też rozwiązania dostępne w Firebasekonsoli, Firebaseinterfejsie CLI i publicznym Firebase App DistributionAPI. Opisujemy też limity dotyczące wersji i testerów, aby umożliwić Ci wcześniejsze zaplanowanie optymalnych wrażeń.
Jeśli korzystasz też z platform Apple, zapoznaj się z sprawdzonymi metodami dystrybucji aplikacji na platformy Apple do testerów kontroli jakości przy użyciu CI/CD i fastlane.
Zanim zaczniesz
Zanim wdrożysz sprawdzone metody opisane w tym dokumencie, włącz App Distribution w Firebase konsoli dla każdej aplikacji. Jeśli nie włączysz App Distribution, pojawi się błąd 404.
Aby włączyć App Distribution, wykonaj te czynności:
- Otwórz App Distributionstronę w konsoli Firebase.
- Wybierz aplikację na Androida.
- Kliknij Rozpocznij.
Pakiety Android App Bundle (AAB) stają się najpopularniejszym formatem pakietów na Androida, dlatego zalecamy skonfigurowanie możliwości dystrybucji plików AAB do testerów przez połączenie z Google Play.
Automatyzowanie przepływu pracy związanego z testowaniem przedpremierowym za pomocą potoku CI/CD
Jeśli chcesz zautomatyzować tworzenie i udostępnianie aplikacji testerom oraz korzystasz z CI/CD, zalecamy użycie fastlane lub Gradle. Inną opcją jest użycie Firebasewiersza poleceń, który umożliwia dostęp do wielu usług Firebase.
Korzystanie z fastlane
Zintegruj App Distribution z potokiem CI/CD za pomocą fastlane, czyli narzędzia open source, które automatyzuje tworzenie i publikowanie aplikacji na iOS i Androida. Dzięki automatycznemu tworzeniu i dystrybuowaniu najnowszych wersji do testerów masz pewność, że zawsze mają oni najbardziej aktualną wersję testową aplikacji.
Aby dowiedzieć się, jak zintegrować App Distribution z fastlane, przeczytaj artykuł Dystrybuowanie aplikacji na Androida do testerów za pomocą fastlane.
Używanie Gradle
Użyj Gradle, aby zintegrować App Distribution z procesem kompilacji Androida za pomocą wtyczki Gradle App Distribution. Wtyczka umożliwia określanie testerów i notatek o wersji w pliku build.gradle aplikacji, co pozwala konfigurować dystrybucję różnych typów kompilacji i wariantów aplikacji.
Aby dowiedzieć się, jak zintegrować App Distribution z Gradle, przeczytaj artykuł Dystrybuowanie aplikacji na Androida do testerów za pomocą Gradle.
Korzystanie z interfejsu wiersza poleceń Firebase
Używaj narzędzi interfejsu wiersza poleceń Firebase udostępnianych przez App Distribution, aby automatycznie rozpowszechniać wersje wśród testerów. Możesz określić testerów i notatki o wersji.
Rozpowszechnij najnowszą kompilację na Androida, podając identyfikator aplikacji w Firebase, opcjonalnie dodając informację o wersji i plik zawierający adresy e-mail testerów:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Więcej informacji o automatyzacji kompilacji za pomocą interfejsu wiersza poleceń Firebase znajdziesz w artykule Dystrybuowanie aplikacji na Androida do testerów za pomocą interfejsu wiersza poleceń Firebase.
Uwierzytelnianie za pomocą danych logowania usługi
Użyj App Distribution wtyczki fastlane, wtyczki Gradle lub Firebase CLI z kontami usługi. Konto usługi to rodzaj konta Google, które reprezentuje aplikacje (w przeciwieństwie do użytkowników). System CI może używać kont usług do uruchamiania obciążeń App Distribution. Więcej informacji znajdziesz w artykule Uwierzytelnianie za pomocą konta usługi.
Jeśli korzystasz z federacji tożsamości zadań, możesz wygenerować i użyć pliku konfiguracji danych logowania zamiast klucza konta usługi.
Pamiętaj o limitach publikacji
App Distribution obsługuje maksymalnie 1000 wersji na aplikację. Oznacza to, że po przekroczeniu limitu wersji App Distribution automatycznie usuwa najstarsze wersje powyżej limitu. Aby dowiedzieć się, jak zarządzać limitami wersji, przeczytaj artykuł Jak długo dostępne są wersje aplikacji?
Dodawanie tego samego zestawu testerów do wielu wersji
Jeśli chcesz dodać do wersji dużą liczbę testerów, skorzystaj z funkcji zbiorczego zarządzania testerami w App Distribution.
Zalecamy używanie grup, aby dodawać tych samych testerów do wielu wersji. Grupa działa jak lista kontroli dostępu. Gdy usuniesz testera z grupy, straci on dostęp do wszystkich wersji rozpowszechnianych w tej grupie. Więcej informacji znajdziesz w artykule Dodawanie i usuwanie testerów z grupy.
Jeśli masz wielu testerów, możesz dodawać i usuwać ich zbiorczo w Firebase. Aby zautomatyzować dodawanie i usuwanie testerów, użyj Firebaseinterfejsu wiersza poleceń, fastlane, Gradle lub publicznego Firebase App Distributioninterfejsu API.
Pamiętaj o limitach testerów
App Distribution ogranicza liczbę testerów, których możesz dodać do projektu w Firebase lub App Distribution grupy. Po przekroczeniu tych limitów nie będziesz mieć możliwości udostępnienia aplikacji dodatkowym testerom. Więcej informacji o limitach testerów znajdziesz w artykule Czy istnieją limity dodawania testerów do aplikacji?
Umożliwianie potencjalnym testerom samodzielnej rejestracji w celu testowania
Aby ułatwić rozpowszechnianie aplikacji wśród większej liczby testerów, zalecamy używanie linków z zaproszeniem. Link z zaproszeniem to unikalny adres URL, który umożliwia testerom wpisanie adresów e-mail w celu zarejestrowania się do testowania aplikacji. Umożliwienie użytkownikom dodawania się do listy testerów aplikacji to prosty sposób na zwiększenie liczby testerów wewnętrznych.
Linki z zaproszeniem są używane m.in. w programach testowania wewnętrznego w firmach, organizacjach z dużymi zespołami ds. kontroli jakości i grupach deweloperów, które chcą, aby poszczególni klienci mogli kontrolować dostęp testerów.
Zalecamy utworzenie linku z zaproszeniem do grupy. Każdy tester, który zarejestruje się za pomocą linku z zaproszeniem, zostanie automatycznie dodany do kolejnych wersji.
Więcej informacji znajdziesz w artykułach Tworzenie linków z zaproszeniem i Dodawanie testerów do grupy i usuwanie ich z niej.
Upewnij się, że testerzy testują wersję, na której Ci zależy.
Gdy nowa wersja zostanie przesłana, testerzy otrzymają e-maila z powiadomieniem. Aby uzupełnić to powiadomienie, możesz użyć tych funkcji: linków do wersji i alertów w aplikacji. Dzięki temu testerzy będą testować konkretną wersję aplikacji, na której Ci zależy:
- Linki do wersji: użyj tej funkcji, gdy chcesz udostępnić testerom konkretną wersję. Aby dowiedzieć się, jak korzystać z linków do wersji, przeczytaj artykuł Dystrybuowanie aplikacji na Androida wśród testerów za pomocą konsoli Firebase. Te linki są też dostępne w naszych narzędziach wiersza poleceń Firebase, fastlane i Gradle (CLI), których możesz używać z narzędziami do automatyzacji kompilacji.
- Alerty w aplikacji: używaj tych alertów, gdy chcesz mieć pewność, że testerzy testują najnowszą wersję aplikacji. Integrując pakiet SDK Firebase App Distribution na Androida, możesz wyświetlać testerom alerty bezpośrednio w aplikacji, gdy dostępne są nowe kompilacje. Aby dowiedzieć się, jak dodawać alerty w aplikacji, przeczytaj artykuł Powiadamianie testerów o nowych kompilacjach.
automatycznie usuwać dostęp testerów, którzy opuszczą firmę;
Gdy wewnętrzny przepływ testów CI/CD będzie działać, musisz zadbać o to, aby osoby, które opuściły firmę, nie miały już dostępu do wewnętrznych wersji. Aby ułatwić Ci zarządzanie dostępem testerów do kompilacji, App Distribution udostępnia te opcje:
- fastlane: użyj pliku Fastfile lub bezpośrednio uruchom działania fastlane. Więcej informacji znajdziesz w artykule Udostępnianie aplikacji na Androida testerom za pomocą fastlane.
- Firebase Interfejs wiersza poleceń: użyj
firebase appdistribution:testers:removeaction. Więcej informacji znajdziesz w artykule Dystrybuowanie aplikacji na Androida do testerów za pomocą interfejsu wiersza poleceń Firebase. - Gradle: jeśli do usuwania testerów używasz Gradle, w pliku
build.gradleprzekażappDistributionRemoveTestersz argumentamii--PROJECT_NUMBER . Więcej informacji znajdziesz w artykule Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą Gradle.--EMAILS - **Public
Firebase App Distribution API:
** użyj punktu końcowego
testers.batchRemove.