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ślanie testerów i notatek o wersji kompilacji, a następnie odpowiednie rozpowszechnianie kompilacji.

Zanim zaczniesz

Jeśli jeszcze tego nie zrobiono, 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ę używać dodatkowych usług, wykonaj wszystkie czynności opisane na stronie, do której link znajdziesz powyżej.

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. Plik APK musisz podpisać kluczem debugowania lub kluczem podpisywania aplikacji.

Krok 2. Udostępnianie aplikacji testerom

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

  1. Zainstaluj najnowszą wersję Firebase CLI lub zaktualizuj ją do tej wersji (zalecamy pobranie samodzielnego pliku binarnego interfejsu wiersza poleceń odpowiedniego 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

    Wymagany: identyfikator Firebase Twojej aplikacji. Identyfikator aplikacji znajdziesz w Firebase konsoli 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 Używanie 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 zwykłego pliku tekstowego:

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

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

    Możesz podać testerów 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 znaleźć w konsoli Firebase.

    Możesz określić grupy jako listę rozdzieloną 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ółowe dane logu.

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

    Te typy dystrybucji są częścią funkcji beta automatycznego testera.

    Urządzenia testowe, na które chcesz rozpowszechniać kompilacje (patrz Testy automatyczne).

    Możesz podać testerów 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 będzie używana podczas zautomatyzowanych testów.

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

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

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

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

    Nazwa zasobu pola nazwy użytkownika na potrzeby automatycznego logowania, która będzie używana podczas testów zautomatyzowanych.

    --test-password-resource

    Nazwa zasobu pola hasła do automatycznego logowania, która będzie używana podczas testów zautomatyzowanych.

    --test-non-blocking

    Uruchamiaj testy automatyczne asynchronicznie. Wyniki testów automatycznych 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 pomagają zarządzać plikami binarnymi i zapewniają testerom oraz innym programistom dostęp do odpowiedniej wersji:

    • firebase_console_uri – link do konsoliFirebase, w której wyświetlona jest jedna wersja. Możesz udostępnić ten link innym programistom w swojej organizacji.
    • testing_uri – link do wersji w wersji dla testerów (aplikacja natywna na Androida) , który umożliwia testerom wyświetlanie notatek 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ć opcji appdistribution:testers:add i appdistribution:testers:remove, aby zapraszać nowych testerów lub usuwać z projektu Firebase dotychczasowych testerów.

    Po dodaniu testera do projektu Firebase możesz dodać go do poszczególnych wersji. Gdy usuniesz testera, nie będzie on już miał 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 spacją. Możesz też określić testerów za pomocą parametru --file /path/to/testers.txt.

    Jeśli masz wielu testerów, warto używać grup: możesz użyć appdistribution:group:createappdistribution: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 na App DistributionpaneluFirebase konsoli przez 150 dni (5 miesięcy). Gdy do wygaśnięcia kompilacji pozostanie 30 dni, 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 obecni testerzy otrzymają e-maile z powiadomieniem o tym, że nowa wersja jest gotowa do testowania (instrukcje instalacji testowej wersji aplikacji znajdziesz w przewodniku konfiguracji dla testerów). Stan każdego testera – czy zaakceptował zaproszenie i czy pobrał aplikację – możesz monitorować w konsoli Firebase.

Testerzy mają 30 dni na zaakceptowanie zaproszenia do testowania aplikacji, zanim utraci ono ważność. Gdy zaproszenie wygaśnie za 5 dni, w Firebasekonsoli obok testera w 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