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 w wersji CLI umożliwia określenie testerów i notatek dotyczących kompilacji, a następnie rozprowadzanie kompilacji.

Zanim zaczniesz

Jeśli nie zostało to jeszcze zrobione, dodaj Firebase do projektu na Androida.

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

Krok 1. Tworzenie aplikacji

Gdy będziesz gotowy do rozpowszechniania przedpremierowej wersji aplikacji do testów, skompiluj plik APK w ramach zwykłego procesu. Plik APK musi być podpisany kluczem debugowania lub kluczem podpisywania aplikacji.

Krok 2. Udostępnianie aplikacji testerom

Aby rozpowszechnić aplikację wśród testerów, prześlij plik aplikacji za pomocą interfejsu wiersza poleceń Firebase:

  1. Zainstaluj najnowszą wersję interfejsu wiersza poleceń Firebase lub zaktualizuj go do tej wersji (zalecamy pobranie samodzielnego pliku binarnego dla interfejsu wiersza poleceń odpowiedniego dla Twojego systemu operacyjnego). Zaloguj się i sprawdź, czy masz dostęp do swoich projektów. .
  2. Na stronie App Distribution konsoli Firebase wybierz aplikację, którą chcesz rozpowszechniać, a potem kliknij Rozpocznij.
  3. Uruchom polecenie appdistribution:distribute, aby przesłać aplikację i rozpowszechnić ją wśród testerów. Aby skonfigurować dystrybucję, użyj tych parametrów:

    appdistribution:distribute options
    --app

    Wymagane: identyfikator aplikacji Firebase Twojej aplikacji. Identyfikator aplikacji znajdziesz w konsoli Firebase na stronie Ogólne ustawienia.

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

    token odświeżania wydrukowany podczas uwierzytelniania środowiska CI za pomocą wiersza poleceń Firebase (więcej informacji znajdziesz w artykule Używanie wiersza poleceń w systemach CI ).

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

    Informacje o tej kompilacji.

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

    --release-notes "Text of release notes"

    Możesz też podać ścieżkę do pliku tekstowego:

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

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

    Testerów możesz wskazać 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 pliku tekstowego zawierającego listę adresów e-mail rozdzielonych przecinkami:

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

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

    Grupy możesz określić jako listę oddzieloną przecinkami:

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

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

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

    Flaga, którą możesz dołączyć, aby wydrukować szczegółowy dziennik.

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

    Te typy dystrybucji są częścią funkcji testowania automatycznego w wersji beta.

    Urządzenia testowe, na które chcesz rozpowszechnić kompilacje (patrz Automatyczne testy).

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

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

    Możesz też podać ścieżkę do pliku tekstowego 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 ma być używana podczas testów zautomatyzowanych.

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

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

    Możesz też określić ścieżkę do pliku tekstowego zawierającego hasło:

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

    Nazwa zasobu dla pola nazwy użytkownika do automatycznego logowania, które ma być używane podczas testów zautomatyzowanych.

    --test-password-resource

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

    --test-non-blocking

    asynchronicznie przeprowadzać testy automatyczne; Wyniki automatycznego testu znajdziesz w konsoli Firebase.

    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 wiersz poleceń Firebase wyświetla te linki: Te linki pomogą Ci zarządzać plikami binarnymi i zadbać o to, aby testerzy i inni deweloperzy mieli odpowiednią wersję:

    • firebase_console_uri – link do konsoli Firebase, na której wyświetla się pojedynczy film. Możesz udostępnić ten link innym programistom w organizacji.
    • testing_uri – link do wersji w interfejsie testera (natywnej aplikacji na Androida), która umożliwia wyświetlanie notatek dotyczących 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 binarną aplikację (plik APK lub AAB). Link wygasa po 1 godzinie.

    Zarządzanie testerami i grupami

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

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

    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 spacjami. Testerów możesz też określić za pomocą parametru --file /path/to/testers.txt.

    Jeśli masz dużą liczbę testerów, rozważ użycie grup: możesz użyć poleceń appdistribution:group:createappdistribution:group:delete, aby utworzyć lub usunąć grupy w projekcie Firebase.

    Użyj parametru --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 wersji kompilacji będzie ona dostępna w panelu App Distribution konsoli Firebase przez 150 dni (5 miesięcy). Gdy do wygaśnięcia wersji pozostało 30 dni, w konsoli i na liście wersji na urządzeniu testowym testera pojawi się powiadomienie o wygaśnięciu.

Testerzy, którzy nie zostali zaproszeni do testowania aplikacji, otrzymują e-maile z zaproszeniem do rozpoczęcia testów, a obecni testerzy otrzymują e-maile z powiadomieniem, że nowa wersja jest gotowa do testowania (instrukcje instalacji testowej wersji aplikacji znajdziesz w przewodniku po konfiguracji testów). Stan każdego testującego (czy zaakceptował zaproszenie i czy pobrał aplikację) możesz sprawdzać w konsoli Firebase.

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

Dalsze kroki