Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Verteilen Sie iOS-Apps an Tester mit fastlane

Sie können mit Builds Tester verteilen fastlane , eine Open - Source - Plattform , die automatisiert den Aufbau und iOS und Android Apps veröffentlichen. Es folgt einfach den Anweisungen in einem definierten Fastfile . Nachdem Sie Fastlane und Ihre einrichten Fastfile , können Sie App Verteilung mit fastlane Konfiguration integrieren.

Schritt 1. Fastlane einrichten

  1. Installieren und Einrichten von fastlane .

  2. Um App Distribution zu Ihrer Fastlane-Konfiguration hinzuzufügen, führen Sie den folgenden Befehl im Stammverzeichnis Ihres iOS-Projekts aus:

    fastlane add_plugin firebase_app_distribution

    Wenn der Befehl fordert Sie mit einer Option, wählen Sie Option 3: RubyGems.org .

Schritt 2. Authentifizieren Sie sich bei Firebase

Bevor Sie das Fastlane-Plug-in verwenden können, müssen Sie sich zunächst bei Ihrem Firebase-Projekt authentifizieren. Es gibt drei Möglichkeiten, dies zu erreichen:

Schritt 3. Richten Sie Ihr Fastfile ein und verteilen Sie Ihre App

  1. In einer ./fastlane/Fastfile Spur, fügen Sie einen firebase_app_distribution Block. Verwenden Sie die folgenden Parameter, um die Verteilung zu konfigurieren:
    firebase_app_distribution-Parameter
    app

    Nur erforderlich , wenn Ihre Anwendung keine Firebase - Konfigurationsdatei (enthält GoogleService-Info.plist ): Ihre App Firebase App - ID. Sie können die App - ID in der Firebase - Konsole im finden Seite Allgemeine Einstellungen .

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

    Der Pfad zu Ihrer GoogleService-Info.plist Datei, bezogen auf den archivierten Produktpfad. Auf GoogleService-Info.plist standardmäßig.

    Die Datei wird verwendet , um Ihre App Firebase App - ID zu erhalten , wenn die app Parameter nicht spezifiziert ist.

    firebase_cli_token

    Ein Aktualisierungs - Token , dass gedruckt wird , wenn Sie das Plugin-Login Aktion ausführen (siehe Authentifizieren mit einem Google - Konto , oben), oder wenn Sie Ihre CI - Umgebung mit dem Firebase CLI (lesen Sie authentifizieren Verwenden der CLI mit CI - Systeme für weitere Informationen).

    service_credentials_file

    Der Pfad zur JSON-Datei Ihres Google-Dienstkontos. Siehe oben für , wie Anmeldeinformationen Dienstkonto zu authentifizieren .

    ipa_path

    Ersetzt apk_path (veraltet). Absoluter Pfad zu der IPA-Datei, die Sie hochladen möchten. Wenn nicht angegeben, bestimmt fastlane den Speicherort der Datei anhand der Spur, in der die Datei generiert wurde.

    release_notes
    release_notes_file

    Versionshinweise für diesen Build.

    Sie können die Versionshinweise entweder direkt angeben:

    release_notes: "Text of release notes"

    Oder geben Sie den Pfad zu einer Nur-Text-Datei an:

    release_notes_file: "/path/to/release-notes.txt"
    testers
    testers_file

    Die E-Mail-Adressen der Tester, die Sie einladen möchten.

    Sie können die Tester als durch Kommas getrennte Liste von E-Mail-Adressen angeben:

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

    Oder Sie können den Pfad zu einer Nur-Text-Datei angeben, die eine durch Kommas getrennte Liste von E-Mail-Adressen enthält:

    testers_file: "/path/to/testers.txt"
    groups
    groups_file

    Die Tester Gruppen , die Sie einladen möchten (siehe Tester verwalten ). Gruppen werden mit . angegeben Gruppenaliase , die Sie in der Firebase-Konsole nachschlagen können.

    Sie können die Gruppen als durch Kommas getrennte Liste angeben:

    groups: "qa-team, trusted-testers"

    Oder Sie können den Pfad zu einer Nur-Text-Datei angeben, die eine durch Kommas getrennte Liste von Gruppennamen enthält:

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

    Eine boolesche Flagge. Sie können diese Einstellung vornehmen , true ausführlichen Debug - Ausgabe zu drucken.

Zum Beispiel:

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

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

    end
end

Schließlich, um die Build zur Verfügung Tester zu machen, führen Sie Ihre Spur:

fastlane <lane>

Sobald Sie Ihren Build verteilt haben, steht er 150 Tage (fünf Monate) im App-Verteilungs-Dashboard der Firebase-Konsole zur Verfügung. Wenn der Build 30 Tage vor dem Ablaufen liegt, wird sowohl in der Konsole als auch in der Build-Liste Ihres Testers auf seinem Testgerät eine Ablaufbenachrichtigung angezeigt.

Tester , die nicht eingeladen haben , um die Anwendung zu testen , erhalten E - Mail - Einladungen , um loszulegen, und bestehende Tester erhalten E - Mail - Benachrichtigungen , dass eine neue Build - Test (lesen Sie die bereit ist , Tester Set up Anleitung für Anweisungen, wie die Test - App installieren). Sie können den Status jedes Testers in der Firebase-Konsole überwachen – ob er die Einladung angenommen hat und ob er die App heruntergeladen hat.

Tester haben 30 Tage Zeit, um eine Einladung zum Testen der App anzunehmen, bevor sie abläuft. Wenn eine Einladung 5 Tage vor Ablauf abläuft, wird in der Firebase-Konsole neben dem Tester bei einer Version eine Ablaufbenachrichtigung angezeigt. Eine Einladung kann erneuert werden, indem sie über das Dropdown-Menü in der Testerzeile erneut gesendet wird.

Schritt 4 (optional). Tester für die Distribution verwalten

Sie können Tester aus Ihrer App Release , indem Sie Ihre hinzufügen oder entfernen Fastfile - Datei oder direkt ausgeführt fastlane Aktionen. Laufende Aktionen werden direkt die Werte außer Kraft gesetzt in Ihrem Fastfile .

Sobald ein Tester zu Ihrem Firebase-Projekt hinzugefügt wurde, können Sie ihn einzelnen Releases hinzufügen. Tester, die entfernt werden, haben keinen Zugriff mehr auf Releases in Ihrem Projekt, können jedoch für einen bestimmten Zeitraum weiterhin Zugriff auf Ihre Releases behalten.

Verwenden 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

Führe Fastlane-Aktionen aus

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"

Sie können auch angeben Tester mit --file="/path/to/testers.txt statt --emails .

Die firebase_app_distribution_add_testers und firebase_app_distribution_remove_testers Aufgaben übernehmen auch die folgenden Argumente:

  • project_name : Ihre Firebase Projektnummer.
  • service_credentials_file : Der Pfad zu Ihrer Google - Service Credentials - Datei.
  • firebase_cli_token : Auth - Token für Firebase CLI.

Die service_credentials_file und die firebase_cli_token sind die gleichen Argumente , die die Upload - Aktion verwendet.