Firebase 将于 5 月 10 日重返 Google I/O 大会!立即报名

Dystrybuuj aplikacje na iOS do testerów za pomocą fastlane

Możesz dystrybuować kompilacje do testerów za pomocą fastlane , platformy open source, która automatyzuje tworzenie i wydawanie aplikacji na iOS i Androida. Postępuje zgodnie z prostymi instrukcjami zdefiniowanymi w pliku Fastfile . Po skonfigurowaniu Fastlane i Fastfile możesz zintegrować Dystrybucję aplikacji z konfiguracją Fastlane.

Krok 1. Skonfiguruj fastlane

  1. Zainstaluj i skonfiguruj fastlane .

  2. Aby dodać Dystrybucję aplikacji do konfiguracji Fastlane, uruchom następujące polecenie z katalogu głównego projektu iOS:

    fastlane add_plugin firebase_app_distribution

    Jeśli polecenie wyświetli monit z opcją, wybierz Option 3: RubyGems.org .

Krok 2. Uwierzytelnij w Firebase

Zanim będziesz mógł użyć wtyczki fastlane, musisz najpierw uwierzytelnić się w swoim projekcie Firebase na jeden z poniższych sposobów. Domyślnie wtyczka fastlane szuka poświadczeń z Firebase CLI, jeśli nie jest używana żadna inna metoda uwierzytelniania.

Krok 3. Skonfiguruj Fastfile i rozpowszechnij swoją aplikację

  1. Na linii ./fastlane/Fastfile dodaj blok firebase_app_distribution . Użyj następujących parametrów, aby skonfigurować dystrybucję:
    parametry firebase_app_distribution
    app

    Wymagane tylko wtedy, gdy Twoja aplikacja nie zawiera pliku konfiguracyjnego Firebase ( GoogleService-Info.plist ) : Identyfikator aplikacji Firebase Twojej aplikacji. Identyfikator aplikacji można znaleźć w konsoli Firebase na stronie Ustawienia ogólne .

    app: "1:1234567890:ios:0a1b2c3d4e5f67890"
    googleservice_info_plist_path

    Ścieżka do pliku GoogleService-Info.plist względem zarchiwizowanej ścieżki produktu. Ustaw domyślnie na GoogleService-Info.plist .

    Plik służy do uzyskiwania identyfikatora aplikacji Firebase aplikacji, jeśli parametr app nie jest określony.

    firebase_cli_token

    Token odświeżania, który jest drukowany, gdy uruchamiasz akcję logowania wtyczki (patrz Uwierzytelnianie przy użyciu konta Google powyżej) lub gdy uwierzytelniasz swoje środowisko CI za pomocą Firebase CLI (więcej informacji znajdziesz w artykule Używanie CLI z systemami CI ).

    service_credentials_file

    Ścieżka do pliku json konta usługi Google. Zobacz powyżej, jak uwierzytelnić się przy użyciu poświadczeń konta usługi .

    ipa_path

    Zastępuje apk_path (przestarzałe). Ścieżka bezwzględna do pliku IPA, który chcesz przesłać. Jeśli nie jest określony, fastlane określa lokalizację pliku na podstawie toru, w którym plik został wygenerowany.

    release_notes
    release_notes_file

    Informacje o wersji dla tej kompilacji.

    Możesz bezpośrednio określić informacje o wydaniu:

    release_notes: "Text of release notes"

    Lub podaj ś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 określić testerów jako listę adresów e-mail oddzielonych przecinkami:

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

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

    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ą pseudonimy grupowe , który możesz wyszukać w konsoli Firebase.

    Możesz określić grupy jako listę oddzieloną przecinkami:

    groups: "qa-team, trusted-testers"

    Lub możesz określić ścieżkę do zwykłego pliku tekstowego zawierającego oddzieloną przecinkami listę nazw grup:

    groups_file: "/path/to/groups.txt"
    debug

    Flaga logiczna. Możesz ustawić to na true aby wydrukować szczegółowe dane wyjściowe debugowania.

Na przykład:

platform :ios do
    desc "My awesome app"
    lane :distribute do
        build_ios_app(...)
        # build_ios_app is a built-in fastlane action.

        release = firebase_app_distribution(
            app: "1:123456789:ios:abcd1234",
            testers: "tester1@company.com, tester2@company.com",
            release_notes: "Lots of amazing new features to test out!"
        )

    end
end

Aby udostępnić kompilację testerom, uruchom linię:

fastlane <lane>

Wartość zwracana przez akcję to hash reprezentujący przesłane wydanie. Ten skrót jest również dostępny przy użyciu lane_context[SharedValues::FIREBASE_APP_DISTRO_RELEASE] . Aby uzyskać więcej informacji na temat dostępnych pól w tym mieszaniu, zapoznaj się z dokumentacją interfejsu API REST .

Wtyczka fastlane wyświetla następujące linki po przesłaniu wersji. Te łącza pomagają zarządzać plikami binarnymi i zapewniają, że testerzy i inni programiści mają odpowiednią wersję:

  • Łącze do konsoli Firebase wyświetlającej jedną wersję. Możesz udostępnić ten link innym programistom w swojej organizacji.
  • Link do wersji w środowisku testera (klip sieciowy iOS), który umożliwia testerom przeglądanie informacji o wersji i instalowanie aplikacji na swoim urządzeniu. Tester musi mieć dostęp do wersji, aby użyć łącza.
  • Podpisany link, który bezpośrednio pobiera i instaluje plik binarny aplikacji (plik IPA). Link wygasa po godzinie.

Po rozpowszechnieniu kompilacji jest ona dostępna w panelu dystrybucji aplikacji w konsoli Firebase przez 150 dni. Gdy kompilacja wygaśnie za 30 dni, w konsoli i na liście kompilacji testera na jego urządzeniu testowym pojawi się powiadomienie o wygaśnięciu.

Testerzy, którzy nie zostali wcześniej zaproszeni do testowania aplikacji, otrzymują zaproszenia e-mail, aby rozpocząć. Istniejący testerzy otrzymują powiadomienia e-mail, że nowa kompilacja jest gotowa do przetestowania. Aby dowiedzieć się, jak zainstalować aplikację testową, zobacz Konfiguracja jako tester . Możesz monitorować stan każdego testera, aby określić, czy zaakceptował zaproszenie i czy pobrał aplikację w konsoli Firebase.

(Opcjonalnie) Aby automatycznie zwiększać numer kompilacji za każdym razem, gdy tworzysz nową wersję w dystrybucji aplikacji, możesz użyć akcji firebase_app_distribution_get_latest_release i increment_build_number . Poniższy kod zawiera przykład automatycznego zwiększania numeru kompilacji:

lane :increment_version do
  latest_release = firebase_app_distribution_get_latest_release(
    app: "<your Firebase app ID>"
  )
  increment_build_number({ build_number: latest_release[:buildVersion].to_i + 1 })
end

Aby dowiedzieć się więcej o tej funkcji wtyczki Fastlane, zobacz Uzyskiwanie informacji o najnowszej wersji aplikacji .

Krok 4 (opcjonalnie). Zarządzaj testerami dystrybucji

Możesz dodawać i usuwać testerów z wersji aplikacji, korzystając z pliku Fastfile lub bezpośrednio uruchamiając akcje Fastlane. Uruchamiane akcje bezpośrednio zastępują wartości ustawione w Fastfile .

Po dodaniu testera do projektu Firebase możesz dodać go do poszczególnych wersji. Testerzy, którzy zostali usunięci z Twojego projektu Firebase, nie mają już dostępu do wydań w Twoim projekcie, ale mogą zachować dostęp do Twoich wydań przez określony czas.

Użyj Fastfile

# Use lanes to add or remove testers from an app release.
lane(:add_testers) do
  firebase_app_distribution_add_testers(
    emails: "foo@google.com,bar@google.com"
    # or file: "/path/to/testers.txt"
  )
end

lane(:remove_testers) do
  firebase_app_distribution_remove_testers(
    emails: "foo@google.com,bar@google.com"
    # or file: "/path/to/testers.txt"
  )
end
# Add or remove testers with the terminal
$ fastlane add_testers
$ fastlane remove_testers

Uruchom akcje fastlane

fastlane run firebase_app_distribution_add_testers emails:"foo@google.com,bar@google.com"

fastlane run firebase_app_distribution_remove_testers emails:"foo@google.com,bar@google.com"

Możesz także określić testerów za pomocą --file="/path/to/testers.txt zamiast --emails .

Zadania firebase_app_distribution_add_testers i firebase_app_distribution_remove_testers akceptują również następujące argumenty:

  • project_name : Twój numer projektu Firebase.
  • service_credentials_file : Ścieżka do pliku danych logowania do usługi Google.
  • firebase_cli_token : Token autoryzacji dla Firebase CLI.

Plik service_credentials_file i firebase_cli_token to te same argumenty, które są używane w akcji przesyłania.

Krok 5 (opcjonalnie). Uzyskaj informacje o najnowszej wersji swojej aplikacji

Możesz użyć akcji firebase_app_distribution_get_latest_release , aby pobrać informacje o najnowszej wersji swojej aplikacji w dystrybucji aplikacji, w tym informacje o wersji aplikacji, informacje o wersji i czas utworzenia. Przypadki użycia obejmują automatyczne zwiększanie wersji i przenoszenie informacji o wersji z poprzedniej wersji.

Wartością zwracaną przez akcję jest skrót reprezentujący najnowszą wersję. Ten skrót jest również dostępny przy użyciu lane_context[SharedValues::FIREBASE_APP_DISTRO_LATEST_RELEASE] . Aby uzyskać więcej informacji na temat dostępnych pól w tym mieszaniu, zapoznaj się z dokumentacją interfejsu API REST .

Parametry

parametry firebase_app_distribution_get_latest_release
app

Wymagane tylko wtedy, gdy Twoja aplikacja nie zawiera pliku konfiguracyjnego Firebase ( GoogleService-Info.plist ) : Identyfikator aplikacji Firebase Twojej aplikacji. Identyfikator aplikacji można znaleźć w konsoli Firebase na stronie Ustawienia ogólne .

app: "1:1234567890:ios:0a1b2c3d4e5f67890"
googleservice_info_plist_path

Ścieżka do pliku GoogleService-Info.plist względem zarchiwizowanej ścieżki produktu. Ustaw domyślnie na GoogleService-Info.plist .

Plik służy do uzyskiwania identyfikatora aplikacji Firebase aplikacji, jeśli parametr app nie jest określony.

firebase_cli_token

Token odświeżania, który jest drukowany, gdy uruchamiasz akcję logowania wtyczki (patrz Uwierzytelnianie przy użyciu konta Google powyżej) lub gdy uwierzytelniasz swoje środowisko CI za pomocą Firebase CLI (więcej informacji znajdziesz w artykule Używanie CLI z systemami CI ).

service_credentials_file

Ścieżka do pliku json konta usługi Google. Zobacz powyżej, jak uwierzytelnić się przy użyciu poświadczeń konta usługi .

debug

Flaga logiczna. Możesz ustawić to na true aby wydrukować szczegółowe dane wyjściowe debugowania.

Następne kroki