Android Management API(AMAPI)SDK を使用すると、特定のアプリが Android Device Policy(ADP)と直接通信できるようになります。次の機能がサポートされています。
- コマンドのローカル実行
- カスタム DPC で管理されているデバイスを AMAPI に移行する
- Device Trust from Android Enterprise
- 管理対象 Google アカウントの追加もサポートする新しいデバイス登録フロー
- AMAPI でカスタムアプリを管理する
- アプリケーションの役割を管理する。
- デバイスの EID を読み取る。
AMAPI SDK をアプリケーションに統合するには、次の手順を行う必要があります。
前提条件
- アプリの
minSdkVersionが API レベル 21 以上に設定されていることを確認します。 - 最新バージョンの AMAPI SDK の依存関係をアプリケーションに追加します。利用可能な最新ライブラリのバージョンと、 アプリケーションへの追加方法については、AMAPI SDK のリリースノート ページをご覧ください。
queries 要素を追加する
アプリが SDK 30 以降をターゲットとしている場合は、ADP と連携することを指定するために、AndroidManifest.xml に queries 要素が必要です。
<queries>
<package android:name="com.google.android.apps.work.clouddpc" />
</queries>
詳しくは、Android でのパッケージの公開設定のフィルタリングをご覧ください。
NotificationReceiverService を実装する
一部の機能では
NotificationReceiverServiceを作成する必要があります。また、一部の機能では
任意で使用できます。使用するには、NotificationReceiverService を拡張するクラスを定義し、AndroidManifest.xml に service として追加して、エクスポートされていることを確認します。
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 アプリに NotificationReceiverService クラスの ComponentName を指定する必要があります。これを行うには、2 つの方法があります。
どちらの方法を使用するかは、各機能のドキュメントで指定されています。
明示的な API
この場合、ComponentName は適切な API を介して ADP アプリに渡されます。詳細については、該当する機能のドキュメントをご覧ください。
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>
この方法を使用する各機能の meta-data の android:name に使用する特定の文字列については、各機能のドキュメントをご覧ください(例: アプリケーションの役割を管理する)。このタグ付けを有効にするには、アプリに有効なサービスが 1 つだけ必要です。このサービスには、android:name がこの特定の文字列で、android:value が空の文字列である meta-data が含まれている必要があります。同じサービスに複数の meta-data を追加できます。