Обновление по воздуху (OTA) предлагают гибкий способ Сдать обновления переводов для мобильных и веб-приложений без необходимости выпуска новой версии в App Store, Google Play или на других платформах развертывания. Этот подход поддерживает непрерывную локализацию и гибкие рабочие процессы разработки за счет сокращения задержек и ручных процессов.
Функция обновление по воздуху (OTA) в Phrase Strings интегрируется с платформами iOS, Android, React Native, Flutter, i18next и Rails. Обновления для текстовых меток мгновенно отправляются в мобильные приложения.
Необходимо создать новый выпуск, чтобы применить обновленные настройки. Весь контент, включенный в выпуск, должен быть доступен в Phrase Strings, которая передает переводы напрямую в приложение. Если контент отсутствует, переводы не будут доставлены.
Для мобильных приложений обновление по воздуху (OTA) требует интеграции соответствующего Software Development Kit (SDK) в приложение для получения переводов из Phrase Strings во время выполнения.
Рекомендации
Для получения сведений о распространении, выпуске и интерфейсе приложений API, обратитесь к Developer Hub.
При первом запуске приложения, использующего SDK для iOS, Android, React Native или Flutter на устройстве, создается уникальный случайный идентификатор устройства. Этот идентификатор отслеживает активных пользователей за определенный период времени. Он не используется для каких-либо иных форм или средств отслеживания и не содержит никакой информации о пользователе или устройстве.
Количество запросов обновление по воздуху (OTA) и число активных пользователей в месяц (MAU) ограничены в зависимости от выбранного тарифного плана.
MAU — это количество уникальных устройств, с которых запрашиваются переводы. Каждому устройству присваивается случайный Идентификатор. MAU рассчитывается на основе количества уникальных Идентификаторов, назначенных за последние 30 дней. Каждое взаимодействие с серверами Phrase считается запросом.
Данные, отправляемые с запросами обновление по воздуху (OTA)
SDK взаимодействует с услугой обновление по воздуху (OTA) для проверки обновлений и включает следующие сведения в каждый заказ:
-
Идентификатор устройства (например, "F3AFCB10-80A2-84CB-94C0-27F5EF58876D". Уникален для этого приложения и поэтому не позволяет отслеживать конкретное устройство.)
-
Версия приложения (например, "1.2.0")
-
Последнее обновить файла перевод (например, "1542187679")
-
Версия SDK (например, "1.0.0")
-
Языковой стандарт (например, "de-DE")
-
Формат файла (например, "Strings")
-
Клиент (например, "ios")
-
Распространение Идентификатор (Идентификатор дистрибутива)
-
Секрет окружения (для различения разработки и производства)
Домены, используемые SDK:
Центр обработки данных ЕС
-
ota.eu.phrase.com
-
cdn.eu.phrase.com
-
ota.phraseapp.com
-
cdn.phraseapp.com
Центр обработки данных США
-
ota.us.phrase.com
-
cdn.us.phrase.com
SDK Phrase обновление по воздуху (OTA) разработаны для обеспечения функциональности приложений, даже если интерфейс приложений API обновление по воздуху (OTA) недоступен. В таких случаях SDK возвращается к последним успешно полученным Strings, сохраненным на устройстве, или к встроенным Strings, включенным в пакет приложения. Это предотвращает ошибки или отсутствие Strings для конечных пользователей. Чтобы гарантировать надежный резервный вариант, встроенные Strings следует обновлять при каждом выпуске приложения.
Дистрибутивы — это настроенная настройка, которая определяет, как и где доставляются обновление по воздуху (OTA) для конкретной платформы или проект.
Перевод платформ определяются в рамках дистрибутива:
-
iOS
-
Android
-
Флаттер
-
i18next
-
Rails
Возможно создание нескольких дистрибутивов, но в идеале на один проект должен приходиться один дистрибутив. При использовании одного дистрибутива для iOS и Android заполнители для двух форматов преобразуются автоматически.
Разрешения
Управление дистрибутивами и релизами обновление по воздуху (OTA) ограничено назначением на проект. Пользователи управляют ими только в тех проектах, к которым они назначены.
Роли ответственный, администратор, менеджер проекта, разработчик и дизайнер по умолчанию имеют полный доступ к дистрибутивам и релизам обновление по воздуху (OTA). Роль переводчик не имеет доступ.
Ответственные и администраторы имеют доступ ко всем проектам.
Пользователям необходимо разрешение на уровне учетной записи для управления дистрибутивами перед созданием одного из них. Новый дистрибутив привязывается только к проектам, к которым пользователь может получить доступ.
Для более детального контроля клиенты Enterprise могут связаться с командой поддержки по поводу Пользовательской роли.
Резервные языки
Если резервные языки установлены в настройках языка проекта, к которому подключен дистрибутив, строки из выбранного языка будут отображаться, если запрошенный язык существует, но ключ не переведен.
Если используется специфичный для страны язык (например, en-GB), но он не является частью релиза, система может использовать стандартную версию (например, en) этого языка, если она существует в проекте. Если запрошенный язык не найден вовсе, вместо него может быть использован языковой стандарт проекта по умолчанию.
Резервные языки не будут работать для связанных ключей.
Создать дистрибутив
Чтобы создать дистрибутив, выполните следующие действия:
-
В поле на странице нажмите Настроить или число конфигураций, если некоторые из них уже существуют.
Откроется страница , на которой отображаются существующие конфигурации.
-
Нажмите Новый дистрибутив. Откроется окно .
-
На вкладке Общие укажите , , с которым связан дистрибутив, требуемые и требуемые .
-
Для дистрибутивов Android перейдите на вкладку Android, чтобы выбрать формат, который при необходимости заключает любой перевод, включая HTML-теги, в CDATA.
-
После выбора проекта для связи с дистрибутивом станет доступна вкладка Планирование. При необходимости используйте эту вкладку, чтобы настроить запланированные релизы обновление по воздуху (OTA) в дистрибутиве.
-
-
На вкладке Резервные языки выберите настройки резервных языков для конкретного дистрибутива по мере необходимости. Опции резервных языков имеют приоритет в том порядке, в котором они отображаются в списке.
-
При необходимости перейдите на вкладку Переводы, чтобы выбрать опцию использования последней проверенной версии переводов. Включите эту опцию только при работе с расширенным рабочим процессом проверки.
-
Нажмите «Сохранить».
Сведения о дистрибутиве отображаются с идентификаторами, необходимыми для SDK. Сведения можно просмотреть снова, выбрав дистрибутив на странице .
Чтобы обновить переводы, создайте новый релиз в рамках дистрибутива. Текущее состояние проекта экспортируется и становится доступным для подключенных клиентов.
Чтобы создать релиз, выполните следующие действия:
-
На странице обновление по воздуху нажмите добавить релиз рядом с нужным дистрибутивом.
Откроется окно .
-
Укажите , требуемую , , и .
Языковые стандарты, которые еще не добавлены в список языков дистрибутива, отображаются как невыбранные и недоступные для выбора. Добавьте необходимые языки в дистрибутив, чтобы сделать их доступными для выбора в будущих выпусках.
Если при создании выпуска вручную не выбраны никакие языковые стандарты, все языковые стандарты, настроенные в дистрибутиве, включаются в выпуск по умолчанию.
При необходимости введите теги, чтобы включить в выпуск только ключи с определенными тегами. Добавление фильтра тегов к выпуску включает только ключи, содержащие этот тег. Ключи без этого тега полностью исключаются из выпуска, и подключенное приложение для этих ключей использует статические файлы перевода, локально включенные в его кодовую базу. Фильтрация по тегам работает независимо от ветвления: если ветвление включено, выберите ветвь и соответствующий тег(и); если ветвление не включено, выберите только соответствующий тег(и).
-
Нажмите Сохранить.
Выпуск добавляется в список в нижней части страницы сведений о дистрибутиве.
Чтобы настроить повторяющееся расписание для выпуска дистрибутива, выполните следующие действия:
-
На странице нажмите на значок шестеренки
рядом с нужным дистрибутивом.
Отобразится окно .
-
Выберите вкладку Запланировать выпуск и нажмите .
Отобразятся параметры планирования выпуска.
Примечание
Параметры планирования также доступны при создании нового дистрибутива.
-
В раскрывающемся списке выберите частоту выпуска, выбрав один из доступных вариантов:
-
-
Выберите нужные дни недели для запланированных выпусков.
-
-
Укажите время и соответствующий .
-
При необходимости выберите , и для запланированных выпусков.
-
Поле отображается только в том случае, если в проекте включено ветвление. Выбор ветвь обновляет список локалей и языков.
-
-
При необходимости укажите версии приложения в полях и .
Оставьте пустым, чтобы применить запланированный выпуск ко всем версиям приложения.
-
Нажмите «Сохранить».
Дистрибутив обновляется информацией о планировании выпуска.
Отключить расписание останавливает автоматический выпуск дистрибутива, но настроенные настройки сохраняются.
Примечание
В пользовательском интерфейсе Strings нет возможности приостановить или временно отключить обновление по воздуху (OTA). Чтобы запретить приложению получать переводы, удалить Идентификатор дистрибутива из конфигурации обновление по воздуху (OTA) приложения; восстановите Идентификатор, чтобы возобновить обновление по воздуху (OTA). В крайнем случае Удалить дистрибутив и Создать новый.
Интеграция соответствующего мобильный SDK или веб-библиотеки позволяет обновлять переводы одним нажатием, а также предоставляет метрики для измерения использования. Отчеты мобильный SDK и веб-библиотеки дают ценную информацию об активный пользователях приложения и их язык. Этот набор отчетов доступен для каждого дистрибутива, а данные обновляются дважды в день.
Отчеты предоставляются по количеству активный пользователей, общим запросам, запросам по язык, запросам по платформе и по не предоставленным язык устройства.
Отчеты для каждого дистрибутива доступны через значок на странице .
Количество активный пользователей, показанное в этих отчетах, отражает скользящее 30-дневное окно, основанное на текущей дате, а не на фиксированном календарном или расчетном периоде.
Техническая документация по интеграции SDK обновление по воздуху (OTA) доступна в файле README каждого хранилище проект: