В этом руководстве описывается, как распространять сборки AAB среди тестировщиков с помощью fastlane — платформы с открытым исходным кодом, которая автоматизирует создание и выпуск приложений для iOS и Android. Он следует простым инструкциям, определенным в Fastfile
. После настройки fastlane и Fastfile
вы можете интегрировать App Distribution с вашей конфигурацией fastlane.
App Distribution интегрируется с внутренней службой обмена приложениями Google Play для обработки загруженных вами AAB и предоставления APK, оптимизированных для конфигураций устройств ваших тестировщиков. Распространение AAB позволяет вам делать следующее:
Запускайте оптимизированные APK-файлы (обслуживаемые Google Play), оптимизированные для устройств ваших тестировщиков.
Выявляйте и устраняйте проблемы, связанные с устройством.
Протестируйте функции набора приложений, такие как доставка функций Play и доставка объектов Play .
Уменьшите размер загрузок для ваших тестировщиков.
Требуемые разрешения
Чтобы загрузить AAB в App Distribution, вы должны связать свое приложение Firebase с приложением в Google Play . Для выполнения этих действий у вас должен быть необходимый уровень доступа.
Если у вас нет необходимого доступа к Firebase, вы можете попросить владельца проекта Firebase назначить вам соответствующую роль в настройках IAM консоли Firebase . Если у вас есть вопросы о доступе к проекту Firebase, в том числе о поиске или назначении владельца, ознакомьтесь с часто задаваемыми вопросами «Разрешения и доступ к проектам Firebase» .
Следующая таблица относится к связыванию приложения Firebase с приложением в Google Play, а также к загрузке AAB.
Действие в консоли Firebase | Требуется разрешение IAM | Роли IAM, которые по умолчанию включают необходимые разрешения | Дополнительные необходимые роли |
---|---|---|---|
Свяжите приложение Firebase с приложением в Google Play | firebase.playLinks.update | Одна из следующих ролей: | Доступ к учетной записи разработчика Google Play в качестве администратора |
Загрузить AAB для распространения приложений | firebaseappdistro.releases.update | Одна из следующих ролей: | –– |
Прежде чем вы начнете
Если вы еще этого не сделали, добавьте Firebase в свой проект Android . В конце этого рабочего процесса у вас будет приложение Firebase для Android в вашем проекте Firebase.
Если вы не используете какие-либо другие продукты Firebase, вам нужно только создать проект и зарегистрировать свое приложение. Если вы решите использовать дополнительные продукты, обязательно выполните все шаги, описанные в разделе «Добавление Firebase в ваш проект Android» .
Чтобы создать ссылку Firebase на Google Play и загрузить AAB, убедитесь, что ваше приложение соответствует следующим требованиям:
Приложение в Google Play и приложение Firebase для Android зарегистрированы с использованием одного и того же имени пакета.
Приложение в Google Play настраивается на панели приложений и распространяется на одну из дорожек Google Play (внутреннее тестирование, закрытое тестирование, открытое тестирование или производство).
Проверка приложения в Google Play завершена, и приложение опубликовано. Ваше приложение опубликовано, если в столбце Статус приложения отображается один из следующих статусов: Внутреннее тестирование (не Черновик внутреннего тестирования), Закрытое тестирование, Открытое тестирование или Производство.
Свяжите свое Android-приложение Firebase со своей учетной записью разработчика Google Play:
В консоли Firebase перейдите в
Project settings и выберите вкладку Integrations .На карточке Google Play нажмите Ссылка .
Если у вас уже есть ссылки на Google Play, нажмите «Управление» .Следуйте инструкциям на экране, чтобы включить интеграцию распространения приложений и выбрать, какие приложения Firebase для Android следует связать с Google Play.
Узнайте больше о привязке к Google Play .
Шаг 1. Настройте полосу быстрого доступа
Чтобы добавить App Distribution в вашу конфигурацию fastlane, выполните следующую команду из корня вашего проекта Android:
fastlane add_plugin firebase_app_distribution
Если команда предложит вам вариант, выберите
Option 3: RubyGems.org
.
Шаг 2. Авторизуйтесь в Firebase
Прежде чем вы сможете использовать плагин fastlane, вы должны сначала пройти аутентификацию в своем проекте Firebase одним из следующих способов. По умолчанию плагин fastlane ищет учетные данные из интерфейса командной строки Firebase, если не используется другой метод аутентификации.
Аутентификация с помощью сервисной учетной записи позволяет вам гибко использовать плагин с вашей системой непрерывной интеграции (CI). Существует два способа предоставления учетных данных служебной учетной записи:
- Передайте ключевой файл вашей учетной записи службы действию
firebase_app_distribution
. Этот метод может оказаться удобным, если у вас уже есть файл ключа учетной записи службы в среде сборки. - Установите переменную среды
GOOGLE_APPLICATION_CREDENTIALS
так, чтобы она указывала на файл ключа вашей учетной записи службы. Вы можете предпочесть этот метод, если у вас уже есть учетные данные приложения по умолчанию (ADC), настроенные для другой службы Google (например, Google Cloud).
- В Google Cloud Console выберите свой проект и создайте новую учетную запись службы.
- Добавьте роль администратора распространения приложений Firebase .
- Создайте закрытый ключ json и переместите ключ в место, доступное для вашей среды сборки. Обязательно сохраните этот файл в надежном месте , так как он предоставляет администратору доступ к распространению приложений в вашем проекте Firebase.
- Пропустите этот шаг, если вы создали приложение после 20 сентября 2019 года. В консоли Google API включите Firebase App Distribution API. При появлении запроса выберите проект с тем же именем, что и ваш проект Firebase.
Укажите или найдите учетные данные своей учетной записи службы:
- Чтобы передать ключ вашей служебной учетной записи в действие
firebase_app_distribution
вашей полосы, установите параметрservice_credentials_file
с путем к файлу JSON вашего закрытого ключа. Чтобы найти свои учетные данные с помощью ADC, задайте для переменной среды
GOOGLE_APPLICATION_CREDENTIALS
путь к JSON-файлу закрытого ключа. Например:export GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/credentials/file.json
Дополнительные сведения об аутентификации с помощью ADC см. в статье Предоставление учетных данных вашему приложению.
- Чтобы передать ключ вашей служебной учетной записи в действие
Инструкции по аутентификации вашего проекта см . в разделе Вход с помощью интерфейса командной строки Firebase .
Шаг 3. Настройте свой Fastfile и распространите свое приложение
- В полосе
./fastlane/Fastfile
добавьте блокfirebase_app_distribution
. Используйте следующие параметры для настройки раздачи:параметры firebase_app_distribution app
Обязательно : идентификатор приложения Firebase вашего приложения. Идентификатор приложения можно найти в консоли Firebase, на странице «Общие настройки» .
app: "1:1234567890:android:0a1b2c3d4e5f67890"
firebase_cli_token
Токен обновления, который печатается при выполнении действия входа в систему надстройки (см. раздел «Аутентификация с использованием учетной записи Google » выше) или при проверке подлинности среды CI с помощью интерфейса командной строки Firebase (дополнительную информацию см. в разделе Использование интерфейса командной строки с системами 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(task: "bundle", ...) # build_android_app is a built-in fastlane action. release = 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!", android_artifact_type: "AAB" ) end end
Чтобы сделать сборку доступной для тестировщиков, запустите свою полосу:
fastlane <lane>
Возвращаемое значение действия — это хэш, представляющий загруженный релиз. Этот хэш также доступен с использованием lane_context[SharedValues::FIREBASE_APP_DISTRO_RELEASE]
. Дополнительные сведения о доступных полях в этом хеше см. в документации по REST API .
Плагин fastlane выводит следующие ссылки после загрузки релиза. Эти ссылки помогут вам управлять двоичными файлами и убедиться, что тестировщики и другие разработчики имеют правильный выпуск:
- Ссылка на консоль Firebase, отображающую один выпуск. Вы можете поделиться этой ссылкой с другими разработчиками в вашей организации.
- Ссылка на выпуск в интерфейсе тестировщика (собственное приложение для Android), которая позволяет тестировщикам просматривать примечания к выпуску и устанавливать приложение на свое устройство. Тестировщику необходим доступ к выпуску, чтобы использовать ссылку.
- Подписанная ссылка, которая напрямую загружает и устанавливает двоичный файл приложения (файл APK или AAB). Ссылка действительна через час.
После того, как вы распространите свою сборку, она будет доступна на панели управления распространением приложений консоли Firebase в течение 150 дней. Когда срок действия сборки истекает через 30 дней, в консоли и в списке сборок тестировщика на его тестовом устройстве появляется уведомление об истечении срока действия.
Тестировщики, которые ранее не были приглашены для тестирования приложения, получают приглашения по электронной почте, чтобы начать работу. Существующие тестировщики получают уведомления по электронной почте о том, что новая сборка готова к тестированию. Чтобы узнать, как установить тестовое приложение, см. руководство по настройке тестера . Вы можете отслеживать статус каждого тестировщика, чтобы определить, приняли ли они приглашение и загрузили ли они приложение в консоли Firebase.
(Необязательно) Чтобы автоматически увеличивать номер сборки каждый раз, когда вы создаете новый выпуск в App Distribution, вы можете использовать действие firebase_app_distribution_get_latest_release
и, например, плагин fastlane increment_version_code
. В следующем коде показан пример автоматического увеличения номера сборки:
lane :increment_version do
latest_release = firebase_app_distribution_get_latest_release(
app: "<your Firebase app ID>"
)
increment_version_code({ version_code: latest_release[:buildVersion].to_i + 1 })
end
Дополнительные сведения о действии firebase_app_distribution_get_latest_release
см. в статье Получение информации о последнем выпуске вашего приложения .
Шаг 4 (необязательно). Управление тестировщиками для дистрибутива
Вы можете добавлять и удалять тестировщиков из выпуска вашего приложения, используя файл Fastfile
или напрямую запуская действия fastlane. Выполнение действий напрямую переопределяет значения, установленные в вашем Fastfile
.
После добавления тестировщика в ваш проект Firebase вы можете добавить его в отдельные выпуски. Тестировщики, удаленные из вашего проекта 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
: токен авторизации для Firebase CLI.
service_credentials_file
и firebase_cli_token
— это те же аргументы, которые используются действием загрузки.
Шаг 5 (необязательно). Получите информацию о последней версии вашего приложения
Вы можете использовать действие firebase_app_distribution_get_latest_release
для получения информации о последнем выпуске вашего приложения в App Distribution, включая информацию о версии приложения, примечания к выпуску и время создания. Варианты использования включают автоматическое увеличение версии и перенос примечаний к выпуску из предыдущего выпуска.
Возвращаемое значение действия — это хэш, представляющий последний выпуск. Этот хэш также доступен с помощью lane_context[SharedValues::FIREBASE_APP_DISTRO_LATEST_RELEASE]
. Дополнительные сведения о доступных полях в этом хеше см. в документации по REST API .
Параметры
параметры firebase_app_distribution_get_latest_release | |
---|---|
app | Обязательно : идентификатор приложения Firebase вашего приложения. Идентификатор приложения можно найти в консоли Firebase, на странице «Общие настройки» . app: "1:1234567890:android:0a1b2c3d4e5f67890" |
firebase_cli_token | Токен обновления, который печатается при выполнении действия входа в систему надстройки (см. раздел «Аутентификация с использованием учетной записи Google » выше) или при проверке подлинности среды CI с помощью интерфейса командной строки Firebase (дополнительную информацию см. в разделе Использование интерфейса командной строки с системами CI ). |
service_credentials_file | Путь к json-файлу вашего сервисного аккаунта Google. См. выше, как пройти аутентификацию с использованием учетных данных служебной учетной записи . |
debug | Логический флаг. Вы можете установить для этого параметра значение |
Следующие шаги
Узнайте о передовых методах распространения приложений Android среди тестировщиков QA с помощью CI/CD .
, В этом руководстве описывается, как распространять сборки AAB среди тестировщиков с помощью fastlane — платформы с открытым исходным кодом, которая автоматизирует создание и выпуск приложений для iOS и Android. Он следует простым инструкциям, определенным в Fastfile
. После настройки fastlane и Fastfile
вы можете интегрировать App Distribution с вашей конфигурацией fastlane.
App Distribution интегрируется с внутренней службой обмена приложениями Google Play для обработки загруженных вами AAB и предоставления APK, оптимизированных для конфигураций устройств ваших тестировщиков. Распространение AAB позволяет вам делать следующее:
Запускайте оптимизированные APK-файлы (обслуживаемые Google Play), оптимизированные для устройств ваших тестировщиков.
Выявляйте и устраняйте проблемы, связанные с устройством.
Протестируйте функции набора приложений, такие как доставка функций Play и доставка объектов Play .
Уменьшите размер загрузок для ваших тестировщиков.
Требуемые разрешения
Чтобы загрузить AAB в App Distribution, вы должны связать свое приложение Firebase с приложением в Google Play . Для выполнения этих действий у вас должен быть необходимый уровень доступа.
Если у вас нет необходимого доступа к Firebase, вы можете попросить владельца проекта Firebase назначить вам соответствующую роль в настройках IAM консоли Firebase . Если у вас есть вопросы о доступе к проекту Firebase, в том числе о поиске или назначении владельца, ознакомьтесь с часто задаваемыми вопросами «Разрешения и доступ к проектам Firebase» .
Следующая таблица относится к связыванию приложения Firebase с приложением в Google Play, а также к загрузке AAB.
Действие в консоли Firebase | Требуется разрешение IAM | Роли IAM, которые по умолчанию включают необходимые разрешения | Дополнительные необходимые роли |
---|---|---|---|
Свяжите приложение Firebase с приложением в Google Play | firebase.playLinks.update | Одна из следующих ролей: | Доступ к учетной записи разработчика Google Play в качестве администратора |
Загрузить AAB для распространения приложений | firebaseappdistro.releases.update | Одна из следующих ролей: | –– |
Прежде чем вы начнете
Если вы еще этого не сделали, добавьте Firebase в свой проект Android . В конце этого рабочего процесса у вас будет приложение Firebase для Android в вашем проекте Firebase.
Если вы не используете какие-либо другие продукты Firebase, вам нужно только создать проект и зарегистрировать свое приложение. Если вы решите использовать дополнительные продукты, обязательно выполните все шаги, описанные в разделе «Добавление Firebase в ваш проект Android» .
Чтобы создать ссылку Firebase на Google Play и загрузить AAB, убедитесь, что ваше приложение соответствует следующим требованиям:
Приложение в Google Play и приложение Firebase для Android зарегистрированы с использованием одного и того же имени пакета.
Приложение в Google Play настраивается на панели приложений и распространяется на одну из дорожек Google Play (внутреннее тестирование, закрытое тестирование, открытое тестирование или производство).
Проверка приложения в Google Play завершена, и приложение опубликовано. Ваше приложение опубликовано, если в столбце Статус приложения отображается один из следующих статусов: Внутреннее тестирование (не Черновик внутреннего тестирования), Закрытое тестирование, Открытое тестирование или Производство.
Свяжите свое Android-приложение Firebase со своей учетной записью разработчика Google Play:
В консоли Firebase перейдите в
Project settings и выберите вкладку Integrations .На карточке Google Play нажмите Ссылка .
Если у вас уже есть ссылки на Google Play, нажмите «Управление» .Следуйте инструкциям на экране, чтобы включить интеграцию распространения приложений и выбрать, какие приложения Firebase для Android следует связать с Google Play.
Узнайте больше о привязке к Google Play .
Шаг 1. Настройте полосу быстрого доступа
Чтобы добавить App Distribution в вашу конфигурацию fastlane, выполните следующую команду из корня вашего проекта Android:
fastlane add_plugin firebase_app_distribution
Если команда предложит вам вариант, выберите
Option 3: RubyGems.org
.
Шаг 2. Авторизуйтесь в Firebase
Прежде чем вы сможете использовать плагин fastlane, вы должны сначала пройти аутентификацию в своем проекте Firebase одним из следующих способов. По умолчанию плагин fastlane ищет учетные данные из интерфейса командной строки Firebase, если не используется другой метод аутентификации.
Аутентификация с помощью сервисной учетной записи позволяет вам гибко использовать плагин с вашей системой непрерывной интеграции (CI). Существует два способа предоставления учетных данных служебной учетной записи:
- Передайте ключевой файл вашей учетной записи службы действию
firebase_app_distribution
. Этот метод может оказаться удобным, если у вас уже есть файл ключа учетной записи службы в среде сборки. - Установите переменную среды
GOOGLE_APPLICATION_CREDENTIALS
так, чтобы она указывала на файл ключа вашей учетной записи службы. Вы можете предпочесть этот метод, если у вас уже есть учетные данные приложения по умолчанию (ADC), настроенные для другой службы Google (например, Google Cloud).
- В Google Cloud Console выберите свой проект и создайте новую учетную запись службы.
- Добавьте роль администратора распространения приложений Firebase .
- Создайте закрытый ключ json и переместите ключ в место, доступное для вашей среды сборки. Обязательно сохраните этот файл в надежном месте , так как он предоставляет администратору доступ к распространению приложений в вашем проекте Firebase.
- Пропустите этот шаг, если вы создали приложение после 20 сентября 2019 года. В консоли Google API включите Firebase App Distribution API. При появлении запроса выберите проект с тем же именем, что и ваш проект Firebase.
Укажите или найдите учетные данные своей учетной записи службы:
- Чтобы передать ключ вашей служебной учетной записи в действие
firebase_app_distribution
вашей полосы, установите параметрservice_credentials_file
с путем к файлу JSON вашего закрытого ключа. Чтобы найти свои учетные данные с помощью ADC, задайте для переменной среды
GOOGLE_APPLICATION_CREDENTIALS
путь к JSON-файлу закрытого ключа. Например:export GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/credentials/file.json
Дополнительные сведения об аутентификации с помощью ADC см. в статье Предоставление учетных данных вашему приложению.
- Чтобы передать ключ вашей служебной учетной записи в действие
Инструкции по аутентификации вашего проекта см . в разделе Вход с помощью интерфейса командной строки Firebase .
Шаг 3. Настройте свой Fastfile и распространите свое приложение
- В полосе
./fastlane/Fastfile
добавьте блокfirebase_app_distribution
. Используйте следующие параметры для настройки раздачи:параметры firebase_app_distribution app
Обязательно : идентификатор приложения Firebase вашего приложения. Идентификатор приложения можно найти в консоли Firebase, на странице «Общие настройки» .
app: "1:1234567890:android:0a1b2c3d4e5f67890"
firebase_cli_token
Токен обновления, который печатается при выполнении действия входа в систему надстройки (см. раздел «Аутентификация с использованием учетной записи Google » выше) или при проверке подлинности среды CI с помощью интерфейса командной строки Firebase (дополнительную информацию см. в разделе Использование интерфейса командной строки с системами 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(task: "bundle", ...) # build_android_app is a built-in fastlane action. release = 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!", android_artifact_type: "AAB" ) end end
Чтобы сделать сборку доступной для тестировщиков, запустите свою полосу:
fastlane <lane>
Возвращаемое значение действия — это хэш, представляющий загруженный релиз. Этот хэш также доступен с использованием lane_context[SharedValues::FIREBASE_APP_DISTRO_RELEASE]
. Дополнительные сведения о доступных полях в этом хеше см. в документации по REST API .
Плагин fastlane выводит следующие ссылки после загрузки релиза. Эти ссылки помогут вам управлять двоичными файлами и убедиться, что тестировщики и другие разработчики имеют правильный выпуск:
- Ссылка на консоль Firebase, отображающую один выпуск. Вы можете поделиться этой ссылкой с другими разработчиками в вашей организации.
- Ссылка на выпуск в интерфейсе тестировщика (собственное приложение для Android), которая позволяет тестировщикам просматривать примечания к выпуску и устанавливать приложение на свое устройство. Тестировщику необходим доступ к выпуску, чтобы использовать ссылку.
- Подписанная ссылка, которая напрямую загружает и устанавливает двоичный файл приложения (файл APK или AAB). Ссылка действительна через час.
После того, как вы распространите свою сборку, она будет доступна на панели управления распространением приложений консоли Firebase в течение 150 дней. Когда срок действия сборки истекает через 30 дней, в консоли и в списке сборок тестировщика на его тестовом устройстве появляется уведомление об истечении срока действия.
Тестировщики, которые ранее не были приглашены для тестирования приложения, получают приглашения по электронной почте, чтобы начать работу. Существующие тестировщики получают уведомления по электронной почте о том, что новая сборка готова к тестированию. Чтобы узнать, как установить тестовое приложение, см. руководство по настройке тестера . Вы можете отслеживать статус каждого тестировщика, чтобы определить, приняли ли они приглашение и загрузили ли они приложение в консоли Firebase.
(Необязательно) Чтобы автоматически увеличивать номер сборки каждый раз, когда вы создаете новый выпуск в App Distribution, вы можете использовать действие firebase_app_distribution_get_latest_release
и, например, плагин fastlane increment_version_code
. В следующем коде показан пример автоматического увеличения номера сборки:
lane :increment_version do
latest_release = firebase_app_distribution_get_latest_release(
app: "<your Firebase app ID>"
)
increment_version_code({ version_code: latest_release[:buildVersion].to_i + 1 })
end
Дополнительные сведения о действии firebase_app_distribution_get_latest_release
см. в статье Получение информации о последнем выпуске вашего приложения .
Шаг 4 (необязательно). Управление тестировщиками для дистрибутива
Вы можете добавлять и удалять тестировщиков из выпуска вашего приложения, используя файл Fastfile
или напрямую запуская действия fastlane. Выполнение действий напрямую переопределяет значения, установленные в вашем Fastfile
.
После добавления тестировщика в ваш проект Firebase вы можете добавить его в отдельные выпуски. Тестировщики, удаленные из вашего проекта 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
: токен авторизации для Firebase CLI.
service_credentials_file
и firebase_cli_token
— это те же аргументы, которые используются действием загрузки.
Шаг 5 (необязательно). Получите информацию о последней версии вашего приложения
Вы можете использовать действие firebase_app_distribution_get_latest_release
для получения информации о последнем выпуске вашего приложения в App Distribution, включая информацию о версии приложения, примечания к выпуску и время создания. Варианты использования включают автоматическое увеличение версии и перенос примечаний к выпуску из предыдущего выпуска.
Возвращаемое значение действия — это хэш, представляющий последний выпуск. Этот хэш также доступен с помощью lane_context[SharedValues::FIREBASE_APP_DISTRO_LATEST_RELEASE]
. Дополнительные сведения о доступных полях в этом хеше см. в документации по REST API .
Параметры
параметры firebase_app_distribution_get_latest_release | |
---|---|
app | Обязательно : идентификатор приложения Firebase вашего приложения. Идентификатор приложения можно найти в консоли Firebase, на странице «Общие настройки» . app: "1:1234567890:android:0a1b2c3d4e5f67890" |
firebase_cli_token | Токен обновления, который печатается при выполнении действия входа в систему надстройки (см. раздел «Аутентификация с использованием учетной записи Google » выше) или при проверке подлинности среды CI с помощью интерфейса командной строки Firebase (дополнительную информацию см. в разделе Использование интерфейса командной строки с системами CI ). |
service_credentials_file | Путь к json-файлу вашего сервисного аккаунта Google. См. выше, как пройти аутентификацию с использованием учетных данных служебной учетной записи . |
debug | Логический флаг. Вы можете установить для этого параметра значение |
Следующие шаги
Узнайте о передовых методах распространения приложений Android среди тестировщиков QA с помощью CI/CD .