Udostępnianie aplikacji na Androida testerom za pomocą interfejsu wiersza poleceń Firebase


Z tego przewodnika dowiesz się, jak rozpowszechniać pliki APK wśród testerów za pomocą interfejsu wiersza poleceń Firebase. Narzędzie CLI umożliwia określenie testerów i informacji o wersji kompilacji, a następnie odpowiednio ją rozpowszechnia.

Zanim zaczniesz

  1. Dodaj Firebase do projektu aplikacji na Androida, jeśli nie korzystasz w nim jeszcze z tej usługi.

    Jeśli nie używasz żadnych innych usług Firebase, musisz tylko utworzyć projekt i zarejestrować aplikację. Jeśli jednak zdecydujesz się w przyszłości korzystać z dodatkowych usług, wykonaj wszystkie czynności opisane na stronie, do której link podano powyżej.

  2. Otwórz stronę App Distribution w konsoli Firebase. Gdy pojawi się prośba, wybierz projekt w Firebase, a następnie wybierz aplikację za pomocą przełącznika aplikacji i kliknij Rozpocznij.

Krok 1. 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. Musisz podpisać plik APK kluczem debugowania lub kluczem podpisywania aplikacji.

Krok 2. Rozpowszechnianie aplikacji wśród testerów

Aby udostępnić aplikację testerom, prześlij jej plik za pomocą interfejsu wiersza poleceń Firebase:

  1. Zainstaluj lub zaktualizuj do najnowszej wersji interfejs wiersza poleceń Firebase (zalecamy pobranie samodzielnego pliku binarnego interfejsu wiersza poleceń dla Twojego systemu operacyjnego). Zaloguj się i sprawdź, czy masz dostęp do swoich projektów.
  2. Uruchom polecenie appdistribution:distribute, aby przesłać aplikację i udostępnić ją testerom. Aby skonfigurować dystrybucję, użyj tych parametrów:

    appdistribution:distribute options
    --app

    Wymagane: identyfikator aplikacji w Firebase. Identyfikator aplikacji znajdziesz w konsoli Firebase na stronie Ustawienia ogólne.

    --app 1:1234567890:android:0a1b2c3d4e5f67890
    --token

    Token odświeżania, który jest wyświetlany podczas uwierzytelniania środowiska CI za pomocą interfejsu wiersza poleceń Firebase (więcej informacji znajdziesz w artykule Korzystanie z interfejsu wiersza poleceń w systemach CI ).

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    Informacje o wersji tej kompilacji.

    Możesz podać informacje o wersji bezpośrednio:

    --release-notes "Text of release notes"

    Możesz też podać ścieżkę do pliku zwykłego tekstu:

    --release-notes-file "/path/to/release-notes.txt"
    --testers
    --testers-file

    Adresy e-mail testerów, których chcesz zaprosić.

    Testerów możesz podać jako listę adresów e-mail rozdzielonych przecinkami:

    --testers "ali@example.com, bri@example.com, cal@example.com"

    Możesz też podać ścieżkę do zwykłego pliku tekstowego zawierającego listę adresów e-mail rozdzielonych przecinkami:

    --testers-file "/path/to/testers.txt"
    --groups
    --groups-file

    grupy testerów, których chcesz zaprosić (patrz Zarządzanie testerami); Grupy są określane za pomocą aliasów grup, które możesz sprawdzić w konsoli Firebase.

    Możesz podać grupy jako listę rozdzieloną przecinkami:

    --groups "qa-team, trusted-testers"

    Możesz też podać ścieżkę do pliku tekstowego zawierającego listę nazw grup rozdzielonych przecinkami:

    --groups-file "/path/to/groups.txt"
    --debug

    Flaga, którą możesz dołączyć, aby wyświetlić szczegółowe dane wyjściowe logu.

    --test-devices
    --test-devices-file

    Urządzenia testowe, na których chcesz uruchomić testy agenta testowania aplikacji.

    Urządzenia testowe możesz określić jako listę specyfikacji urządzeń rozdzielonych średnikami:

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait"

    Możesz też podać ścieżkę do pliku zwykłego tekstu zawierającego listę urządzeń testowych rozdzielonych średnikami:

    --test-devices-file: "/path/to/test-devices.txt"
    --test-username

    Nazwa użytkownika do automatycznego logowania, która będzie używana podczas testów agenta testowania aplikacji.

    --test-password
    --test-password-file

    Hasło do automatycznego logowania, które będzie używane podczas testów agenta testowania aplikacji.

    Możesz też podać ścieżkę do pliku zwykłego tekstu zawierającego hasło:

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    Nazwa zasobu pola nazwy użytkownika do automatycznego logowania, która będzie używana podczas testów agenta testowania aplikacji.

    --test-password-resource

    Nazwa zasobu pola hasła do automatycznego logowania, które ma być używane podczas testów agenta testowania aplikacji.

    --test-non-blocking

    Jeśli ustawisz tę opcję podczas uruchamiania testów agenta testowania aplikacji, polecenie rozpocznie testy, a następnie natychmiast zwróci wynik, zamiast czekać na ich zakończenie. Aby zobaczyć wyniki testu, otwórz konsolę Firebase. Jeśli ta flaga nie jest ustawiona, polecenie będzie blokowane do momentu zakończenia testów i zakończy się kodem błędu, jeśli którykolwiek z testów się nie powiedzie.

    --results-bucket

    Niestandardowy zasobnik Google Cloud Storage (GCS), w którym przechowywane są wyniki testów. Jeśli pozostawisz to pole puste, zostanie użyty domyślny zasobnik. Zasobnik musi należeć do projektu z włączonymi płatnościami, a określenie zasobnika powoduje naliczenie opłat za wykorzystane miejsce na dane.

    Przykład:

    firebase appdistribution:distribute test.apk  \
        --app 1:1234567890:android:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt

    Po przesłaniu wersji interfejs wiersza poleceń Firebase wyświetla te linki. Te linki pomagają zarządzać plikami binarnymi i zapewniają testerom oraz innym deweloperom dostęp do odpowiedniej wersji:

    • firebase_console_uri – link do konsoli Firebase wyświetlającej pojedynczą wersję. Możesz udostępnić ten link innym deweloperom w organizacji.
    • testing_uri – link do wersji w interfejsie testera (wbudowana aplikacja na Androida), który umożliwia testerom wyświetlanie informacji o wersji i instalowanie aplikacji na urządzeniu. Aby użyć linku, tester musi mieć dostęp do wersji.
    • binary_download_uri – podpisany link, który bezpośrednio pobiera i instaluje plik binarny aplikacji (plik APK lub AAB). Link wygasa po godzinie.

    Zarządzanie testerami i grupami

    Oprócz rozpowszechniania wersji możesz też używać appdistribution:testers:add i appdistribution:testers:remove, aby zapraszać nowych testerów lub usuwać dotychczasowych z projektu w Firebase.

    Po dodaniu testera do projektu w Firebase możesz go dodać do poszczególnych wersji. Po usunięciu tester nie będzie już mieć dostępu do wersji w projekcie. Pamiętaj, że testerzy, którzy zostali niedawno usunięci, mogą przez pewien czas nadal mieć dostęp do Twoich wersji.

    Przykład:

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com

    Adresy e-mail testerów muszą być oddzielone spacją. Testerów możesz też określić za pomocą --file /path/to/testers.txt.

    Jeśli masz wielu testerów, rozważ użycie grup: możesz użyć appdistribution:group:create i appdistribution:group:delete, aby utworzyć lub usunąć grupy w projekcie Firebase.

    Użyj --group-alias, aby określić grupę dla poleceń appdistribution:testers:add i appdistribution:testers:remove.

    Przykład:

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team

Po rozpowszechnieniu kompilacja będzie dostępna w panelu App Distribution w konsoli Firebase przez 150 dni (5 miesięcy). Na 30 dni przed wygaśnięciem kompilacji w konsoli i na liście kompilacji testera na urządzeniu testowym pojawi się powiadomienie o wygaśnięciu.

Testerzy, którzy nie zostali zaproszeni do testowania aplikacji, otrzymają e-maile z zaproszeniem do rozpoczęcia testów, a dotychczasowi testerzy otrzymają e-maile z powiadomieniem, że nowa kompilacja jest gotowa do testowania (instrukcje instalowania aplikacji testowej znajdziesz w przewodniku po konfiguracji dla testerów). W konsoli Firebase możesz sprawdzać stan każdego testera – czy zaakceptował zaproszenie i czy pobrał aplikację.

Testerzy mają 30 dni na przyjęcie zaproszenia do testowania aplikacji, zanim utraci ono ważność. Gdy do wygaśnięcia zaproszenia pozostanie 5 dni, w konsoli Firebase obok testera wersji pojawi się powiadomienie o wygaśnięciu. Zaproszenie można odnowić, wysyłając je ponownie za pomocą menu w wierszu testera.

Dalsze kroki