Интеграция с AMAPI SDK

SDK Android Management API (AMAPI) позволяет определенным приложениям напрямую взаимодействовать с политикой устройств Android (ADP). Он включает поддержку следующих функций:

Для интеграции AMAPI SDK с вашим приложением необходимо выполнить следующие шаги:

  1. Добавьте библиотеку AMAPI SDK .
  2. Добавьте элемент queries , если целевой SDK >= 30.

Предварительные требования

  • Убедитесь, что minSdkVersion вашего приложения установлен как минимум на уровень API 21.
  • Добавьте в свое приложение зависимости для последней версии AMAPI SDK. Версию последней доступной библиотеки и инструкции по ее добавлению в приложение можно найти на странице примечаний к выпуску AMAPI SDK .

Добавить элемент запросов

Если ваше приложение ориентировано на SDK 30 или более позднюю версию, то в файле AndroidManifest.xml необходимо указать элемент queries, чтобы определить, что оно будет взаимодействовать с ADP.

<queries>
    <package android:name="com.google.android.apps.work.clouddpc" />
</queries>

Дополнительную информацию см. в разделе «Фильтрация видимости пакетов в Android» .

Реализуйте службу получения уведомлений (NotificationReceiverService).

Для некоторых функций требуется создание NotificationReceiverService , а для других его использование необязательно. Чтобы использовать его, определите класс, расширяющий NotificationReceiverService , добавьте его в качестве service в ваш AndroidManifest.xml и убедитесь, что он экспортирован.


import com.google.android.managementapi.notification.NotificationReceiverService;

...

public final class MyAppNotificationReceiverService extends NotificationReceiverService {

  @Override
  protected void setupInjection() {
    // This method can be optionally used to inject dependencies at the
    // beginning of the service lifecycle.
  }
}

Необходимо указать в приложении ADP ComponentName вашего класса NotificationReceiverService . Существует два способа сделать это. В документации к каждой функции указано, какой способ следует использовать.

Явный API

В этом случае ComponentName передается в приложение ADP через соответствующий API. Подробности можно найти в документации к данной функции. В файл AndroidManifest.xml добавьте:

<service
 android:name = ".MyAppNotificationReceiverService"
 android:exported = "true" />

Автоматическое обнаружение

При таком подходе вам необходимо пометить вашу службу тегом, чтобы она автоматически обнаруживалась. В файл AndroidManifest.xml добавьте:

<service
 android:name = ".MyAppNotificationReceiverService"
 android:exported = "true" >
    <meta-data android:name="Insert name here" android:value=""/>
</service>

Конкретная строка, используемая для android:name meta-data , описана для каждой функции, использующей этот подход (см. раздел «Управление ролями приложения » для примера). Для корректной работы этой системы тегирования ваше приложение должно иметь ровно одну включенную службу, meta-data которой имеют android:name являющийся этой конкретной строкой, и android:value , являющийся пустой строкой. Вы можете добавить несколько meta-data к одной и той же службе.