Intégration avec le SDK AMAPI

Le SDK API Android Management (AMAPI) permet à des applications spécifiques de communiquer directement avec Android Device Policy (ADP). Il inclut la prise en charge des éléments suivants :

Vous devez suivre les étapes ci-dessous pour intégrer le SDK AMAPI à votre application :

  1. Ajoutez la bibliothèque du SDK AMAPI.
  2. Ajoutez l'élément queries si le SDK cible est supérieur ou égal à 30.

Prérequis

  • Vérifiez que la valeur minSdkVersion de votre application est définie sur au moins le niveau d'API 21.
  • Ajoutez les dépendances de la dernière version du SDK AMAPI à votre application. Vous trouverez la version de la dernière bibliothèque disponible et comment l'ajouter à votre application sur la page des notes de version du SDK AMAPI.

Ajouter l'élément queries

Si votre application cible le SDK 30 ou une version ultérieure, l'élément queries est nécessaire dans le fichier AndroidManifest.xml pour spécifier qu'il interagira avec ADP.

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

Pour en savoir plus, consultez Filtrer la visibilité des packages sur Android.

Implémenter un NotificationReceiverService

Certaines fonctionnalités nécessitent la création d'un NotificationReceiverService, tandis que certaines fonctionnalités l'utilisent de manière facultative. Pour l'utiliser, définissez une classe étendant NotificationReceiverService, ajoutez-la en tant que service à votre fichier AndroidManifest.xml et assurez-vous qu'elle est exportée.


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.
  }
}

Vous devez fournir à l'application ADP le ComponentName de votre classe NotificationReceiverService. Il existe deux façons de procéder. La documentation de chaque fonctionnalité spécifie l'approche à utiliser.

API explicite

Dans ce cas, le ComponentName est transmis à l'application ADP via une API appropriée. Vous trouverez plus d'informations dans la documentation de la fonctionnalité en question. Dans votre fichier AndroidManifest.xml, ajoutez :

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

Exploration automatique

Avec cette approche, vous devez baliser votre service afin qu'il puisse être détecté automatiquement. Dans votre fichier AndroidManifest.xml, ajoutez :

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

La chaîne spécifique à utiliser pour android:name de meta-data est documentée pour chaque fonctionnalité qui utilise cette approche (voir Gérer les rôles d'application pour obtenir un exemple). Pour que ce balisage soit valide, votre application ne doit comporter qu'un seul service activé et dont le meta-data a pour android:name cette chaîne spécifique et pour android:value une chaîne vide. Vous pouvez ajouter plusieurs meta-data au même service.