L'API EMM Google Play est compatible avec les méthodes de distribution suivantes pour les applications publiques et privées:
- Les utilisateurs peuvent installer manuellement des applications à partir du Google Play Store d'entreprise.
- Les administrateurs informatiques peuvent installer à distance des applications sur les appareils des utilisateurs.
Installer manuellement des applications depuis la plate-forme Google Play d'entreprise
Vous pouvez définir les applications qu'un utilisateur peut installer dans le policy
de Device
et les définir en appelant Devices.update
. Lorsque vous provisionnez un nouvel appareil, vous devez définir la règle avant d'ajouter le compte Google Play d'entreprise à l'appareil, sinon elle ne sera pas appliquée pendant une courte période après l'ajout du compte à l'appareil.
Le comportement du Play Store géré est défini par la valeur de policy.productAvailabilityPolicy
:
all
: toutes les applications publiques du Play Store sont disponibles.whitelist
: seules les applications listées danspolicy.productPolicy
sont disponibles.
Dans les deux cas, toutes les applications de policy.productPolicy
sont ajoutées par défaut à la disposition du Play Store de l'entreprise. La disposition du Play Store de l'entreprise correspond à la page d'accueil du Play Store géré lorsque whitelist
est sélectionné. Elle est accessible dans l'onglet "Applications professionnelles" lorsque all
est sélectionné. Vous pouvez autoriser votre client à personnaliser la mise en page du magasin de votre entreprise en intégrant l'iFrame Google Play d'entreprise (consultez Organiser les applications avec l'iFrame Google Play d'entreprise).
Installer des applications à distance sur les appareils des utilisateurs
Pour installer à distance (également appelée installation push) une application sur l'appareil d'un utilisateur, définissez policy.productPolicy.autoInstallPolicy
dans le policy
de Device
. Lorsque vous provisionnez un nouvel appareil, vous devez définir la règle avant d'ajouter le compte Google Play d'entreprise à l'appareil, sinon elle ne sera pas appliquée pendant une courte période après l'ajout du compte à l'appareil.
autoInstallMode
peut être défini sur:
doNotAutoInstall
: l'application n'est pas installée automatiquement.autoInstallOnce
: l'application est automatiquement installée une fois. Si l'utilisateur la désinstalle, elle n'est pas réinstallée.forceAutoInstall
: l'application est automatiquement installée. Si l'utilisateur la désinstalle, elle sera de nouveau installée. Sur les appareils gérés, le DPC doit bloquer la désinstallation à l'aide deDevicePolicyManager.setUninstallBlocked
.
En cas d'échec (perte de connectivité, manque d'espace de stockage, etc.), les installations sont relancées automatiquement jusqu'à ce qu'elles aboutissent. Une stratégie d'intervalle exponentiel entre les tentatives est appliquée pour éviter de gaspiller la batterie et les données en cas d'échecs irrécupérables.
Priorité des installations
Vous pouvez choisir l'ordre des installations en définissant autoInstallPriority
. La priorité doit être un entier non signé et la valeur par défaut est 0. Les applications sont installées par ordre ou priorité croissantes, ce qui signifie que celles ayant la priorité la plus faible sont installées en premier.
Contraintes d'installation
Vous pouvez définir des contraintes d'installation pour chaque application en définissant un autoInstallConstraint
, ce qui vous permet de contrôler l'état requis de l'appareil pendant l'installation:
- si l'appareil doit être connecté à un réseau Wi-Fi,
- si l'appareil doit être en charge,
- et si l'appareil doit être inactif (pas utilisé activement par l'utilisateur).
Si les contraintes ne sont pas immédiatement remplies, les installations concernées sont mises en file d'attente jusqu'à ce qu'elles soient respectées.
Dans une autoInstallConstraint
, la règle AND est appliquée entre les champs. Par exemple, avec l'autoInstallConstraint
suivant, l'appareil doit être en charge et connecté à un réseau sans compteur (par exemple, le Wi-Fi) pour que l'application puisse être installée:
"autoInstallConstraint": [
"chargingStateConstraint" : "chargingRequired",
"networkTypeConstraint" : "unmeteredNetwork"
]
Installer automatiquement des applications sur les appareils nouvellement provisionnés
L'API EMM Google Play envoie une notification NewDeviceEvent
lors du premier provisionnement d'un appareil. Pour installer automatiquement des applications sur des appareils nouvellement provisionnés, écoutez les notifications NewDeviceEvent
. À partir de chaque NewDeviceEvent
, récupérez userId
et deviceId
, puis appelez Devices.update
pour définir la règle pour cet appareil.
Pour savoir comment vous abonner aux notifications EMM, consultez Configurer les notifications EMM.
Distribuer des applications pour des tests fermés
Les tests fermés permettent aux développeurs d'applications de recueillir les commentaires d'utilisateurs de confiance sur les premières versions de leur application. Les développeurs peuvent configurer des tests fermés dans la Google Play Console. L'API Play EMM permet aux administrateurs informatiques de distribuer des versions fermées (également appelées canaux) d'applications à des utilisateurs spécifiques. Votre entreprise cliente peut utiliser cette fonctionnalité non seulement pour tester des applications tierces, mais également pour tester des applications privées développées en interne.
Applications éligibles
Pour qu'un développeur ajoute une entreprise à la liste des testeurs fermés d'une application, celle-ci doit répondre aux critères suivants:
- Une version de production de l'application est publiée sur Google Play.
- Dans la Google Play Console, Google Play d'entreprise est activé sur la page Paramètres avancés de l'application.
- Toutes les versions fermées de l'application doivent respecter les exigences concernant les codes de version.
Ajouter une entreprise aux tests fermés
Les développeurs d'applications peuvent ajouter des entreprises aux tests qui utilisent les méthodes Tests alpha fermés ou Tests alpha à l'aide de Google Groupes. Pour obtenir des instructions, consultez le guide sur la configuration d'un test ouvert, fermé ou interne. Le développeur doit saisir l'ID d'organisation (également appelé ID d'entreprise) de chaque entreprise participante. Les administrateurs informatiques peuvent fournir l'ID de leur organisation aux développeurs d'applications tierces en procédant comme suit:
- Connectez-vous au Google Play Store d'entreprise.
- Cliquez sur Paramètres de l'administrateur.
- Copiez la chaîne d'ID d'organisation figurant dans le champ "Informations sur l'organisation" et envoyez-la au développeur.
Exigences supplémentaires pour les applications privées
Pour les applications privées, le développeur doit également ajouter l'ID d'organisation de chaque entreprise participante dans l'onglet Google Play d'entreprise de la page "Paramètres avancés" de l'application. Pour obtenir des instructions, consultez Publier une application privée.
Distribuer des canaux de test fermé aux utilisateurs
Pour récupérer la liste des canaux disponibles pour une application spécifique d'une entreprise, appelez Products.get
. La liste appTracks[]
contenue dans la réponse inclut les canaux disponibles pour chaque application. appTracks[].trackAlias
est le nom lisible du canal que vous pouvez afficher dans votre console EMM, et appTracks[].trackId
est l'ID lisible par l'ordinateur du canal.
Pour accorder à un utilisateur la visibilité sur le canal fermé d'une application, définissez policy.productPolicy[].trackIds[]
dans le policy
de Device
. Si plusieurs canaux sont disponibles pour un appareil, la version disponible ayant le code de version le plus élevé sera installée.
Les trackIds seront automatiquement supprimés de l'appel Products.get
dans certains scénarios, par exemple:
- Le fichier APK du canal est promu dans un autre canal ou en production.
- La version de production est mise à jour avec une version supérieure au canal.
- Un développeur arrête le canal.
Effectuer le suivi des licences d'application payantes
Pour les applications payantes, l'objet Grouplicenses
indique le nombre de licences détenues par une entreprise et le nombre de licences utilisées. Vous pouvez appeler Grouplicenses.get
pour obtenir les informations de licence d'une application.
Pour qu'une application payante puisse être installée sur un appareil, l'entreprise doit disposer d'une licence pour celle-ci. Si une licence est disponible, l'application est installée sur l'appareil et un objet Entitlements
est créé. Un objet Entitlements
associe une licence à un utilisateur et diminue le nombre de licences disponibles pour l'application. Si aucune licence n'est disponible, l'installation de l'application échoue et aucun objet Entitlements
n'est créé.
Les objets Grouplicenses
et Entitlements
ne sont pas utilisés par les applications distribuées sans frais.