W tym dokumencie przedstawiono sprawdzone metody korzystania z usługi Firebase App Distribution, aby procesy testowania przedpremierowego systemu Android były trwałe i powtarzalne w środowisku CI/CD. Rozwiązania obejmują Gradle i Fastlane, ale aby zapewnić Ci jeszcze większą elastyczność, oferujemy również rozwiązania dostępne za pośrednictwem konsoli Firebase, Firebase CLI i publicznego Firebase App Distribution API. Opisujemy również limity wersji i testerów, dzięki czemu możesz zaplanować z wyprzedzeniem optymalne działanie.
Jeśli korzystasz również z platform Apple, zobacz Najlepsze praktyki dotyczące dystrybucji aplikacji Apple wśród testerów kontroli jakości przy użyciu CI/CD i fastlane .
Zanim zaczniesz
Zanim zastosujesz sprawdzone metody opisane w tym dokumencie, pamiętaj o włączeniu dystrybucji aplikacji w konsoli Firebase dla każdej aplikacji . Jeśli nie włączyłeś dystrybucji aplikacji, pojawi się błąd 404.
Aby włączyć dystrybucję aplikacji, wykonaj następujące kroki:
- Otwórz stronę Dystrybucja aplikacji w konsoli Firebase.
- Wybierz swoją aplikację na Androida.
- Kliknij Rozpocznij .
Ze względu na to, że pakiety aplikacji na Androida (AAB) stają się najpopularniejszym formatem pakietów na Androida, zalecamy skonfigurowanie możliwości dystrybucji pakietów AAB wśród testerów przez połączenie z Google Play .
Zautomatyzuj przepływ pracy testowania przed wydaniem za pomocą potoku CI/CD
Jeśli chcesz zautomatyzować tworzenie i udostępnianie aplikacji swoim testerom i korzystasz z CI/CD, zalecamy użycie Fastlane lub Gradle . Inną opcją jest użycie interfejsu Firebase CLI , który umożliwia dostęp do szerokiej gamy produktów Firebase.
Użyj szybkiego pasa
Zintegruj dystrybucję aplikacji z potokiem CI/CD za pomocą fastlane, narzędzia typu open source, które automatyzuje tworzenie i wydawanie aplikacji na iOS i Androida. Tworząc i automatycznie dystrybuując najnowsze wersje do testerów, zapewniasz, że testerzy zawsze mają najnowszą wersję testową Twojej aplikacji.
Aby dowiedzieć się, jak zintegrować Dystrybucję aplikacji z Fastlane, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą Fastlane .
Użyj Gradle'a
Użyj Gradle, aby zintegrować Dystrybucję aplikacji z procesem kompilacji Androida za pomocą wtyczki Gradle dystrybucji aplikacji. Wtyczka umożliwia określenie testerów i informacji o wersji w pliku build.gradle
aplikacji, co umożliwia skonfigurowanie dystrybucji dla różnych typów kompilacji i wariantów aplikacji.
Aby dowiedzieć się, jak zintegrować dystrybucję aplikacji z Gradle, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą Gradle .
Użyj interfejsu wiersza polecenia Firebase
Użyj narzędzi Firebase CLI, które udostępnia App Distribution, aby programowo dystrybuować kompilacje do testerów. Możesz określić testerów i informacje o wersji dla kompilacji.
Rozpowszechniaj najnowszą kompilację Androida, określając identyfikator aplikacji Firebase, opcjonalnie dodając informację o wersji i plik zawierający e-maile testerów:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Aby dowiedzieć się więcej o korzystaniu z Firebase CLI do automatyzacji kompilacji, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą Firebase CLI .
Użyj poświadczeń usługi do uwierzytelnienia
Użyj wtyczki Fastlane do dystrybucji aplikacji , wtyczki Gradle lub interfejsu wiersza polecenia Firebase z kontami usług. Konto usługi to rodzaj konta Google, które reprezentuje aplikacje (w przeciwieństwie do użytkowników). Twój system ciągłej integracji może używać kont usług do uruchamiania obciążeń związanych z dystrybucją aplikacji. Aby dowiedzieć się więcej, zobacz Uwierzytelnianie za pomocą konta usługi .
Jeśli używasz federacji tożsamości obciążeń, możesz wygenerować i użyć pliku konfiguracji poświadczeń zamiast klucza konta usługi.
Pamiętaj o limitach wydań
Dystrybucja aplikacji obsługuje maksymalnie 1000 wydań na aplikację. Oznacza to, że po przekroczeniu limitu wydań usługa App Distribution automatycznie usuwa najstarsze wydania powyżej limitu. Aby dowiedzieć się, jak zarządzać limitami wersji, zobacz Jak długo dostępne są wersje aplikacji?
Dodaj ten sam zestaw testerów do wielu wersji
Jeśli chcesz dodać dużą liczbę testerów do swoich wydań, skorzystaj z funkcji zarządzania testerami zbiorczymi usługi App Distribution.
Zalecamy używanie grup w celu dodawania 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 dystrybuowanych do tej grupy. Aby dowiedzieć się więcej, zobacz Dodawanie i usuwanie testerów z grupy .
Jeśli zarządzasz wieloma testerami, możesz zbiorczo dodawać i usuwać testerów za pomocą konsoli Firebase. Aby zautomatyzować dodawanie i usuwanie testerów, użyj Firebase CLI , fastlane , Gradle lub publicznego Firebase App Distribution API .
Pamiętaj o ograniczeniach testera
Dystrybucja aplikacji ogranicza liczbę testerów, których można dodać do projektu Firebase lub grupy dystrybucji aplikacji. Jeśli przekroczysz te limity, nie będziesz mógł rozpowszechniać swojej aplikacji wśród dodatkowych testerów. Aby dowiedzieć się więcej o limitach testerów, zobacz Czy istnieją ograniczenia dotyczące dodawania testerów do mojej aplikacji?
Umożliw potencjalnym testerom samodzielną rejestrację do testów
Aby ułatwić rozpowszechnianie aplikacji wśród większej liczby testerów, zalecamy korzystanie z linków zapraszających. Łącze z zaproszeniem to unikalny adres URL, który umożliwia testerom wpisanie ich adresów e-mail w celu zarejestrowania się w celu przetestowania aplikacji. Umożliwienie użytkownikom dodawania się do listy testerów aplikacji to bezproblemowy sposób na zwiększenie bazy testów wewnętrznych.
Przykłady użycia linków zaproszeń obejmują firmowe programy dogfood, organizacje z dużymi zespołami ds. kontroli jakości oraz grupy programistów, które chcą, aby poszczególni klienci mogli kontrolować dostęp testerów.
Zalecamy utworzenie linku z zaproszeniem dla grupy. Każdy tester, który zarejestruje się za pomocą linku z zaproszeniem, jest automatycznie dodawany do kolejnych wersji.
Aby dowiedzieć się więcej, zobacz Tworzenie linków z zaproszeniami oraz Dodawanie i usuwanie testerów z grupy .
Upewnij się, że testerzy testują wersję, na której Ci zależy
Po przesłaniu nowej wersji testerzy otrzymują powiadomienie e-mailem. Aby uzupełnić to powiadomienie, możesz skorzystać z następujących funkcji — linków do wydania i alertów w aplikacji — aby mieć pewność, że testerzy testują konkretną wersję aplikacji, na której Ci zależy:
- Linki do wersji: użyj tej funkcji, jeśli chcesz udostępnić testerom określoną wersję. Aby dowiedzieć się, jak korzystać z linków do wersji, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą konsoli Firebase . Te łącza są również dostępne w naszych narzędziach wiersza poleceń (CLI) Firebase , fastlane i Gradle do użytku z narzędziami do automatyzacji kompilacji.
- Alerty w aplikacji: użyj tych alertów, jeśli chcesz mieć pewność, że testerzy testują najnowszą wersję Twojej aplikacji. Integrując pakiet Firebase App Distribution Android SDK, możesz wyświetlać alerty bezpośrednio w aplikacji testerom, gdy dostępne są nowe kompilacje Twojej aplikacji. Aby dowiedzieć się, jak dodawać alerty w aplikacji, zobacz Powiadamianie testerów o nowych kompilacjach .
Automatycznie usuwaj dostęp dla testerów, którzy opuszczają firmę
Kiedy wewnętrzny przepływ testów CI/CD jest uruchomiony, musisz upewnić się, że osoby, które odchodzą z firmy, nie będą już miały dostępu do twoich wewnętrznych kompilacji. Aby pomóc Ci zarządzać dostępem testerów do kompilacji, Dystrybucja aplikacji udostępnia następujące opcje:
- fastlane: użyj pliku Fastfile lub bezpośrednio uruchom akcje fastlane. Aby dowiedzieć się więcej, zobacz Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą fastlane .
- Firebase CLI: użyj akcji
firebase appdistribution:testers:remove
. Aby dowiedzieć się więcej, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą Firebase CLI . - Gradle: jeśli używasz Gradle do usuwania testerów, przekaż
appDistributionRemoveTesters
z argumentami
i-- PROJECT_NUMBER
w pliku-- EMAILSbuild.gradle
. Aby dowiedzieć się więcej, zobacz Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą Gradle . - Publiczny interfejs API dystrybucji aplikacji Firebase : Użyj punktu końcowego
testers.batchRemove
.