Le SDK de l'API Android Management (AMAPI) permet à certaines applications de communiquer directement avec Android Device Policy (ADP). Il inclut la prise en charge des éléments suivants :
- Exécution locale des commandes
- Migrer les appareils gérés avec un DPC personnalisé vers AMAPI
- Device Trust from Android Enterprise
- Nouveau processus d'enregistrement des appareils, qui permet également d'ajouter des comptes Google gérés
- Gérer les applications personnalisées avec AMAPI
- Gérer les rôles des applications
Pour intégrer le SDK AMAPI à votre application, vous devez suivre les étapes suivantes :
- Ajoutez la bibliothèque du SDK AMAPI.
- Ajoutez l'élément "queries" si le SDK cible est >= 30.
Prérequis
- Vérifiez que le
minSdkVersion
de votre application est défini sur le niveau d'API 21 au minimum. - 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 la procédure pour 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 AndroidManifest.xml
pour spécifier qu'elle 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 d'autres peuvent l'utiliser de manière facultative. Pour l'utiliser, définissez une classe étendant NotificationReceiverService
, ajoutez-la en tant que service
à votre 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 approches pour ce faire.
La documentation de chaque fonctionnalité indique l'approche à utiliser.
API explicite
Dans ce cas, le ComponentName
est transmis à l'application ADP via une API appropriée. Pour en savoir plus, consultez la documentation de la fonctionnalité concernée.
Dans votre AndroidManifest.xml
, ajoutez :
<service
android:name = ".MyAppNotificationReceiverService"
android:exported = "true" />
Découverte automatique
Avec cette approche, vous devez taguer votre service pour qu'il puisse être découvert automatiquement. Dans votre 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 un exemple).
Pour que ce tag soit valide, votre application doit comporter exactement un service activé dont 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.