Распространять приложения, Распространять приложения

Google Play EMM API поддерживает следующие методы распространения общедоступных и частных приложений:

Установите приложения вручную из управляемого магазина Google Play.

Вы можете определить, какие приложения доступны пользователю для установки, в policy Device и настроить их, вызвав Devices.update . При подготовке нового устройства вам следует установить политику до добавления управляемой учетной записи Google Play на устройство, иначе политика не будет применяться в течение короткого периода времени после добавления учетной записи на устройство.

Поведение управляемого Play Store определяется значением policy.productAvailabilityPolicy :

  • all : доступны все общедоступные приложения из Play Store.
  • whitelist : доступны только приложения, перечисленные в policy.productPolicy .

В обоих случаях все приложения в policy.productPolicy по умолчанию добавляются в макет корпоративного магазина. Макет корпоративного магазина — это домашняя страница управляемого магазина Play Store, если выбран whitelist , и доступ к нему можно получить на вкладке «Рабочие приложения», если выбраны all . Вы можете разрешить своему клиенту настраивать макет корпоративного магазина, встроив управляемый iframe Google Play (см. Организация приложений с помощью управляемого iframe Google Play ) или интегрировав его с API пользовательского макета магазина .

Удаленно устанавливать приложения на устройства пользователей

Чтобы удаленно установить (также называемую принудительной установкой) приложение на устройстве пользователя, установите policy.productPolicy.autoInstallPolicy в policy Device . При подготовке нового устройства вам следует установить политику до добавления управляемой учетной записи Google Play на устройство, иначе политика не будет применяться в течение короткого периода времени после добавления учетной записи на устройство.

Для autoInstallMode можно установить:

  • doNotAutoInstall : приложение не устанавливается автоматически.
  • autoInstallOnce : приложение автоматически устанавливается один раз; если пользователь удалит приложение, оно не будет установлено снова.
  • forceAutoInstall : приложение устанавливается автоматически. Если пользователь удаляет приложение, оно будет установлено снова. На управляемых устройствах ЦОД должен блокировать удаление с помощью DevicePolicyManager.setUninstallBlocked .

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

Приоритет установки

Вы можете выбрать порядок установок, установив autoInstallPriority . Приоритет должен быть целым числом без знака, а значение по умолчанию — 0. Приложения будут устанавливаться в порядке возрастания приоритета, то есть приложения с более низким значением приоритета будут установлены первыми.

Установить ограничения

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

  • должно ли устройство быть подключено к сети Wi-Fi,
  • должно ли устройство заряжаться,
  • и должно ли устройство простаивать (не использоваться активно пользователем).

Если ограничения не будут выполнены немедленно, затронутые установки будут поставлены в очередь до тех пор, пока ограничения не будут выполнены.

В autoInstallConstraint между полями применяется правило AND. Например, при использовании следующего autoInstallConstraint устройство должно одновременно заряжаться и быть подключено к сети без ограничений (например, Wi-Fi), чтобы приложение могло быть установлено:

"autoInstallConstraint": [
  "chargingStateConstraint" : "chargingRequired",
  "networkTypeConstraint" : "unmeteredNetwork"
]

Автоматическая установка приложений на вновь подготовленных устройствах

API EMM Google Play отправляет уведомление NewDeviceEvent при первой подготовке устройства. Чтобы автоматически устанавливать приложения на вновь подготовленные устройства, прослушивайте уведомления NewDeviceEvent . Из каждого NewDeviceEvent получите userId и deviceId , а затем вызовите Devices.update чтобы установить политику для этого устройства.

Чтобы узнать, как подписаться на уведомления EMM, см. Настройка уведомлений EMM .

Распространение приложений для закрытого тестирования

Закрытое тестирование позволяет разработчикам приложений получать отзывы о ранних версиях своих приложений от доверенных пользователей. Разработчики могут настроить закрытые тесты в консоли Google Play. Вы используете Play EMM API, чтобы позволить ИТ-администраторам распространять закрытые версии (также называемые треками) приложений определенным пользователям. Ваши корпоративные клиенты могут использовать эту функцию не только для тестирования сторонних приложений, но и для тестирования частных приложений, разработанных собственными силами.

Подходящие приложения

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

  • Рабочая версия приложения опубликована в Google Play.
  • В Play Console расширенные управляемые функции Google Play включены на странице цен и распространения приложения.
  • Любые закрытые версии приложения соответствуют требованиям к коду версии .

Добавить предприятие в закрытые тесты

Разработчики приложений могут добавлять предприятия в тесты, использующие методы закрытого альфа-тестирования или альфа-тестирования с использованием групп Google . Инструкции см. в руководстве по настройке открытого, закрытого или внутреннего теста . Разработчику необходимо ввести идентификатор организации (также называемый идентификатором предприятия ) каждого участвующего предприятия. ИТ-администраторы могут предоставить идентификатор своей организации сторонним разработчикам приложений, выполнив следующие действия:

  1. Войдите в управляемый магазин Google Play .
  2. Нажмите «Настройки администратора» .
  3. Скопируйте строку идентификатора организации из поля информации об организации и отправьте ее разработчику.

Дополнительные требования для частных приложений

Для частных приложений разработчику также необходимо добавить идентификатор организации каждого участвующего предприятия на странице цен и распространения Play Console. Инструкции см. в разделе Публикация частного приложения .

Раздавать закрытые треки пользователям

Чтобы получить список треков, доступных предприятию для указанного приложения, вызовите Products.get . Список appTracks[] , содержащийся в ответе, включает треки, доступные для каждого приложения. appTracks[].trackAlias ​​— это читаемое пользователем имя трека, которое можно отобразить в консоли EMM, а appTracks[].trackId — это машиночитаемый идентификатор трека.

Чтобы предоставить пользователю видимость закрытой версии приложения, установите policy.productPolicy[].trackIds[] в policy Device . Если для устройства доступно несколько дорожек, будет установлена ​​доступная версия с самым высоким кодом версии.

TrackIds будут автоматически удалены из вызова Products.get в определенных сценариях, например в следующих:

  • APK-файл трека переносится на другой трек или в производство.
  • Производственная версия обновлена ​​до более высокой версии, чем трек.
  • Застройщик останавливает путь.

Отслеживайте лицензии платных приложений

Для платных приложений объект Grouplicenses отслеживает, сколько лицензий принадлежит предприятию и сколько лицензий используется. Вы можете позвонить на Grouplicenses.get , чтобы получить сведения о лицензии для приложения.

Прежде чем платное приложение можно будет установить на устройство, предприятию необходимо иметь лицензию на это приложение. Если лицензия доступна, приложение устанавливается на устройство и создается объект Entitlements . Объект Entitlements связывает лицензию с пользователем и уменьшает количество доступных лицензий для приложения. Если доступных лицензий нет, установка приложения завершается неудачей и объект Entitlements не создается.

Объекты Grouplicenses и Entitlements не используются приложениями, которые распространяются бесплатно.