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

Распространяйте приложения Android среди тестировщиков с помощью fastlane

Это руководство описывает , как распределить APK строит тестеры с использованием FastLane , платформы с открытым кодом , которая автоматизирует и строит рилизинг IOS и Android приложений. Из этого следует , простые инструкции , определенные в Fastfile . После того, как вы создали FastLane и ваш Fastfile , вы можете интегрировать App Distribution с FastLane конфигурации.

Прежде чем вы начнете

Если вы еще не сделали, добавить Firebase в свой Android проекта .

Если вы не используете какие-либо другие продукты Firebase, вам нужно только создать проект и зарегистрировать приложение. Однако, если вы решите использовать дополнительные продукты в будущем, обязательно выполните все шаги на странице, указанной выше.

Шаг 1. Настройте fastlane

  1. Установка и настройка FastLane .

  2. Чтобы добавить распространение приложений в конфигурацию Fastlane, выполните следующую команду из корня вашего проекта Android:

    fastlane add_plugin firebase_app_distribution

    Если команда предложит вам вариант, выберите Option 3: RubyGems.org .

Шаг 2. Выполните аутентификацию с помощью Firebase

Прежде чем вы сможете использовать плагин Fastlane, вы должны сначала пройти аутентификацию в своем проекте Firebase. Этого можно добиться тремя способами:

Шаг 3. Настройте Fastfile и распространите приложение.

  1. В ./fastlane/Fastfile полосу, добавить firebase_app_distribution блок. Используйте следующие параметры для настройки раздачи:
    параметры firebase_app_distribution
    app

    Требуется: Ваше приложение в Firebase App ID. Вы можете найти идентификатор приложения в Firebase консоли, на странице Общих настроек .

    app: "1:1234567890:android:0a1b2c3d4e5f67890"
    firebase_cli_token

    Освежать маркер , который печатается при запуске входа в действие плагина (см Аутентифицировать с помощью учетной записи Google , выше), или при аутентификации среды CI с Firebase CLI (прочитанной Используйте CLI с системами CI для получения дополнительной информации).

    service_credentials_file

    Путь к json-файлу вашей учетной записи службы Google. Смотрите выше , как проверить подлинность с помощью учетных записей служб .

    android_artifact_type

    Указывает тип файла Android (APK или AAB).

    android_artifact_path

    Взамен apk_path (устаревшее). Абсолютный путь к файлу APK или AAB, который вы хотите загрузить. Если не указано, fastlane определяет местоположение файла по полосе, в которой файл был сгенерирован.

    release_notes
    release_notes_file

    Примечания к выпуску для этой сборки.

    Вы можете указать примечания к выпуску напрямую:

    release_notes: "Text of release notes"

    Или укажите путь к текстовому файлу:

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

    Адреса электронной почты тестировщиков, которых вы хотите пригласить.

    Вы можете указать тестировщиков в виде списка адресов электронной почты, разделенных запятыми:

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

    Или вы можете указать путь к текстовому файлу, содержащему список адресов электронной почты, разделенных запятыми:

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

    Тестер групп , которые вы хотите пригласить (см Управление тестеры ). Группы указываются с помощью групповые псевдонимы , который вы можете найти в консоли Firebase.

    Вы можете указать группы в виде списка, разделенного запятыми:

    groups: "qa-team, trusted-testers"

    Или вы можете указать путь к текстовому файлу, содержащему список имен групп, разделенных запятыми:

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

    Логический флаг. Вы можете установить это true для печати многословной отладочного вывода.

platform :android do
    desc "My awesome app"
    lane :distribute do
        build_android_app(...)
        # build_android_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

Наконец, чтобы сделать сборку доступной для тестировщиков, запустить полосу:

fastlane <lane>

После распространения сборки она становится доступной на панели управления распространением приложений консоли Firebase в течение 150 дней (пяти месяцев). Когда срок действия сборки истекает через 30 дней, уведомление об истечении срока действия появляется как в консоли, так и в списке сборок вашего тестировщика на их тестовом устройстве.

Тестеры , которые не были приглашены , чтобы проверить приложение получать приглашения по электронной почте , чтобы начать работу, а существующие тестеры получать уведомления по электронной почте о том , что новая сборка готова к испытанию (прочитать комплект тестера до руководства для получения инструкций о том , как установить приложение тестов). Вы можете отслеживать статус каждого тестировщика - приняли ли они приглашение и загрузили ли приложение - в консоли Firebase.

У тестировщиков есть 30 дней, чтобы принять приглашение протестировать приложение до истечения срока его действия. Когда срок действия приглашения истекает через 5 дней, уведомление об истечении срока действия появляется в консоли Firebase рядом с тестером выпуска. Приглашение можно продлить, повторно отправив его с помощью раскрывающегося меню в строке тестера.

Шаг 4 (необязательно). Управление тестировщиками для распространения

Вы можете добавлять или удалять тестировщик из вашего выпуска приложения, используя ваш Fastfile файл или непосредственно работает FastLane действия. Запуск действия непосредственно отменит значения , установленные в вашем Fastfile .

После того, как тестировщик был добавлен в ваш проект Firebase, вы можете добавлять его в отдельные выпуски. Удаленные тестировщики больше не будут иметь доступа к выпускам в вашем проекте, но могут по-прежнему сохранять доступ к вашим выпускам в течение определенного периода времени.

Использование 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

Выполняйте действия на скоростной полосе

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"

Можно также указать тестеры с помощью --file="/path/to/testers.txt вместо --emails .

В firebase_app_distribution_add_testers и firebase_app_distribution_remove_testers задачи также принимает следующие аргументы:

  • project_name : Ваш Firebase номер проекта.
  • service_credentials_file : Путь к файлу мандатной службы Google.
  • firebase_cli_token : Auth маркер для Firebase CLI.

service_credentials_file и firebase_cli_token являются одними и теми же аргументами , используемых действиями загрузки.