Devices

La liste des méthodes associées à cette ressource est présentée au bas de la page.

Représentations de la ressource

Une ressource "Appareils" représente un appareil mobile géré par l'EMM et appartenant à un utilisateur professionnel spécifique.

{
  "kind": "androidenterprise#device",
  "androidId": string,
  "managementType": string,
  "policy": {
    "autoUpdatePolicy": string,
    "productAvailabilityPolicy": string,
    "productPolicy": [
      {
        "productId": string,
        "tracks": [
          string
        ],
        "trackIds": [
          string
        ],
        "managedConfiguration": {
          "kind": string,
          "productId": string,
          "managedProperty": [
            {
              "key": string,
              "valueBool": boolean,
              "valueInteger": integer,
              "valueString": string,
              "valueStringArray": [
                string
              ],
              "valueBundle": {
                "managedProperty": [
                  (ManagedProperty)
                ]
              },
              "valueBundleArray": [
                {
                  "managedProperty": [
                    (ManagedProperty)
                  ]
                }
              ]
            }
          ],
          "configurationVariables": {
            "kind": "androidenterprise#configurationVariables",
            "mcmId": string,
            "variableSet": [
              {
                "kind": "androidenterprise#variableSet",
                "placeholder": string,
                "userValue": string
              }
            ]
          }
        },
        "autoInstallPolicy": {
          "autoInstallMode": string,
          "autoInstallPriority": integer,
          "autoInstallConstraint": [
            {
              "networkTypeConstraint": string,
              "chargingStateConstraint": string,
              "deviceIdleStateConstraint": string
            }
          ],
          "minimumVersionCode": integer
        },
        "autoUpdateMode": string,
        "enterpriseAuthenticationAppLinkConfigs": [
          {
            "uri": string
          }
        ]
      }
    ],
    "maintenanceWindow": {
      "startTimeAfterMidnightMs": long,
      "durationMs": long
    },
    "deviceReportPolicy": string,
    "policyId": string
  },
  "report": {
    "lastUpdatedTimestampMillis": long,
    "appState": [
      {
        "packageName": string,
        "keyedAppState": [
          {
            "key": string,
            "stateTimestampMillis": long,
            "severity": string,
            "message": string,
            "data": string
          }
        ]
      }
    ]
  },
  "latestBuildFingerprint": string,
  "sdkVersion": integer,
  "maker": string,
  "model": string,
  "device": string,
  "product": string,
  "retailBrand": string
}
Nom de propriété Valeur Description Remarques
androidId string ID Android des services Google Play pour l'appareil, encodé sous forme de chaîne hexadécimale en minuscules. Par exemple, "123456789abcdef0".
device string Nom de code matériel interne de l'appareil. Cela vient de android.os.Build.DEVICE. (champ nommé "device" selon logs/wireless/android/android_checkin.proto)
kind string
latestBuildFingerprint string L'empreinte de build de l'appareil, si elle est connue
maker string Fabricant de l'appareil. Cela vient de android.os.Build.MANUFACTURER.
managementType string Indique dans quelle mesure l'appareil est contrôlé par une EMM Google Play d'entreprise dans différentes configurations de déploiement.

Valeurs possibles:
  • "managedDevice", un appareil dont l'outil de contrôle des règles relatives aux appareils (DPC) de l'EMM est le propriétaire.
  • "managedProfile", un appareil dont le profil est géré par le DPC (le DPC est le propriétaire du profil) en plus d'un profil personnel distinct qui n'est pas disponible pour le DPC.
  • "containerApp", n'est plus utilisé (obsolète).
  • "unmanagedProfile", un appareil qui a été autorisé (par l'administrateur du domaine, à l'aide de la console d'administration pour activer le droit) à utiliser Google Play d'entreprise, mais le profil n'appartient pas à un DPC.


Les valeurs acceptées sont les suivantes :
  • "containerApp"
  • "managedDevice"
  • "managedProfile"
  • "unmanagedProfile"
model string Nom du modèle de l'appareil. Cette valeur provient de android.os.Build.MODEL.
policy nested object Règle appliquée sur l'appareil.
policy.autoUpdatePolicy string Contrôle le moment où les mises à jour automatiques des applications sur l'appareil peuvent être appliquées.

Alternative recommandée: autoUpdateMode, qui est défini par application, offre une plus grande flexibilité concernant la fréquence de mise à jour.

Lorsque autoUpdateMode est défini sur AUTO_UPDATE_POSTPONED ou AUTO_UPDATE_HIGH_PRIORITY, autoUpdatePolicy n'a aucun effet.
  • choiceToTheUser permet à l'utilisateur de l'appareil de configurer la règle de mise à jour des applications.
  • always active les mises à jour automatiques.
  • never désactive les mises à jour automatiques.
  • wifiOnly n'active les mises à jour automatiques que lorsque l'appareil est connecté au Wi-Fi.


Les valeurs acceptées sont les suivantes :
  • "always"
  • "choiceToTheUser"
  • "never"
  • "wifiOnly"
policy.deviceReportPolicy string Indique si l'appareil signale les états des applications à l'EMM. La valeur par défaut est "deviceReportDisabled".

Les valeurs acceptées sont les suivantes :
  • "deviceReportDisabled"
  • "deviceReportEnabled"
policy.maintenanceWindow nested object Intervalle de maintenance définissant quand les applications exécutées au premier plan doivent être mises à jour.
policy.maintenanceWindow.durationMs long Durée de la période de maintenance, en millisecondes. La durée doit être comprise entre 30 minutes et 24 heures (inclus).
policy.maintenanceWindow.startTimeAfterMidnightMs long Heure de début de l'intervalle de maintenance, en millisecondes après minuit sur l'appareil. Les périodes peuvent s'étendre jusqu'à minuit.
policy.policyId string Identifiant de la règle qui sera transmis avec les commentaires sur l'installation de l'application envoyés depuis le Play Store.
policy.productAvailabilityPolicy string Disponibilité accordée à l'appareil pour les produits spécifiés. "all" donne à l'appareil accès à tous les produits, quel que soit leur état d'approbation. "all" n'active pas la visibilité automatique des canaux "alpha" ou "bêta". La "liste blanche" accorde à l'appareil l'accès aux produits spécifiés dans productPolicy[]. Seuls les produits approuvés ou précédemment approuvés (produits dont l'approbation a été révoquée) par l'entreprise peuvent être ajoutés à la liste blanche. Si aucune valeur n'est fournie, la disponibilité définie au niveau de l'utilisateur est appliquée par défaut.

Les valeurs acceptées sont les suivantes :
  • "all"
  • "whitelist"
policy.productPolicy[] list Liste des règles concernant les produits. Vous devez définir productAvailabilityPolicy sur WHITELIST ou ALL pour que les règles relatives aux produits soient appliquées.
policy.productPolicy[].autoInstallPolicy nested object Règle d'installation automatique du produit.
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[] list Contraintes pour l'installation automatique de l'application. Vous pouvez spécifier une seule contrainte au maximum.

policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].chargingStateConstraint string Contrainte d'état de recharge.

Les valeurs acceptées sont les suivantes :
  • "chargingNotRequired"
  • "chargingRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].deviceIdleStateConstraint string Contrainte d'état inactif de l'appareil.

Les valeurs acceptées sont les suivantes :
  • "deviceIdleNotRequired"
  • "deviceIdleRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].networkTypeConstraint string Contrainte de type de réseau.

Les valeurs possibles sont les suivantes :
  • "anyNetwork"
  • "unmeteredNetwork"
policy.productPolicy[].autoInstallPolicy.autoInstallMode string Mode d'installation automatique. Si cette valeur n'est pas définie, la valeur par défaut est "doNotAutoInstall". Une application est installée automatiquement, quel que soit l'intervalle de maintenance défini.

Les valeurs possibles sont les suivantes :
  • "autoInstallOnce"
  • "doNotAutoInstall"
  • "forceAutoInstall"
policy.productPolicy[].autoInstallPolicy.autoInstallPriority integer Priorité de l'installation, sous la forme d'un entier non signé. Un nombre inférieur correspond à une priorité plus élevée.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer Version minimale de l'application. Si une version inférieure est installée, l'application est mise à jour automatiquement conformément aux contraintes d'installation automatique, au lieu d'attendre la mise à jour automatique régulière. Vous pouvez définir un code de version minimal pour un maximum de 20 applications par appareil.
policy.productPolicy[].autoUpdateMode string Mode de mise à jour automatique du produit. Lorsque autoUpdateMode est utilisé, il prévaut toujours sur le choix de l'utilisateur. Par conséquent, lorsque l'utilisateur modifie manuellement les paramètres de l'appareil, ces modifications sont ignorées.

Les valeurs acceptées sont les suivantes :
  • "autoUpdateDefault"
  • "autoUpdateHighPriority"
  • "autoUpdatePostponed"
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[] list Configuration de l'URL d'authentification pour l'application d'authentification d'un fournisseur d'identité. Cela permet de lancer l'application d'authentification du fournisseur d'identité lors de l'authentification dans une application privée à l'aide d'Android WebView. L'application Authentificateur doit déjà être le gestionnaire par défaut de l'URL d'authentification sur l'appareil.
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[].uri string URL d'authentification.
policy.productPolicy[].managedConfiguration nested object Configuration gérée du produit.
policy.productPolicy[].managedConfiguration.configurationVariables nested object Contient l'ID du profil de configuration géré et l'ensemble des variables de configuration (le cas échéant) définies pour l'utilisateur.
policy.productPolicy[].managedConfiguration.configurationVariables.kind string
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId string ID des paramètres des configurations gérées.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[] list Ensemble de variables attribué à l'utilisateur.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].kind string
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].placeholder string Chaîne d'espace réservé définie par l'EMM.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string Valeur de l'espace réservé, spécifique à l'utilisateur.
policy.productPolicy[].managedConfiguration.kind string Obsolète.

policy.productPolicy[].managedConfiguration.managedProperty[] list Ensemble de propriétés gérées pour cette configuration.
policy.productPolicy[].managedConfiguration.managedProperty[].key string Clé unique qui identifie l'établissement.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean Valeur booléenne (ne s'affiche que si le type de la propriété est "bool")
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object Le lot de propriétés gérées (uniquement si le type de la propriété est "lot")
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list Liste des propriétés gérées.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[] list Liste des groupes de propriétés. Cette valeur ne s'affiche que si le type de la propriété est "bundle_array".
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[].managedProperty[] list Liste des propriétés gérées.
policy.productPolicy[].managedConfiguration.managedProperty[].valueInteger integer Valeur entière : elle ne sera présente que si le type de la propriété est un entier.
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string Valeur de la chaîne (ne s'affiche que si le type de la propriété est "chaîne", "choix" ou "masqué")
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list Liste des valeurs de chaîne (cette liste ne s'affiche que si la propriété est de type multi-sélection).
policy.productPolicy[].managedConfiguration.productId string ID du produit auquel la configuration gérée est destinée (par exemple, "app:com.google.android.gm").
policy.productPolicy[].productId string Identifiant du produit. Par exemple, "app:com.google.android.gm".
policy.productPolicy[].trackIds[] list Accorde la visibilité de l'appareil aux canaux de sortie de produit spécifiés, identifiés par trackIds. Vous pouvez obtenir la liste des canaux de diffusion d'un produit en appelant Products.Get.
policy.productPolicy[].tracks[] list Obsolète. Utilisez trackIds à la place.
product string Nom de produit de l'appareil. Cela vient de android.os.Build.PRODUCT.
report nested object Le rapport sur l'appareil a été mis à jour avec les derniers états des applications.
report.appState[] list Liste des états d'application définis par les applications gérées sur l'appareil. Les états d'une application sont définis par ses développeurs. Ce champ est toujours présent.
report.appState[].keyedAppState[] list Liste des états d'application avec clé. Ce champ est toujours présent.
report.appState[].keyedAppState[].data string Champ supplémentaire destiné aux données lisibles par machine. Par exemple, un nombre ou un objet JSON. Pour éviter les attaques XSS, nous vous recommandons de supprimer tout code HTML des données avant de les afficher.
report.appState[].keyedAppState[].key string Clé indiquant à quoi sert l'état fourni par l'application. Le contenu de la clé est défini par le développeur de l'application. Pour éviter les attaques XSS, nous vous recommandons de supprimer tout code HTML de la clé avant de l'afficher. Ce champ est toujours présent.
report.appState[].keyedAppState[].message string Message de forme libre, lisible par l'humain, décrivant l'état de l'application. Par exemple, un message d'erreur. Pour éviter les attaques XSS, nous vous recommandons de supprimer tout code HTML du message avant de l'afficher.
report.appState[].keyedAppState[].severity string Gravité de l'état de l'application Ce champ est toujours présent.

Les valeurs acceptées sont les suivantes :
  • "severityError"
  • "severityInfo"
report.appState[].keyedAppState[].stateTimestampMillis long Code temporel de l'état défini par l'application, en millisecondes depuis l'epoch. Ce champ est toujours présent.
report.appState[].packageName string Nom du package de l'application. Ce champ est toujours présent.
report.lastUpdatedTimestampMillis long Code temporel de la dernière mise à jour du rapport, en millisecondes depuis l'epoch. Ce champ est toujours présent.
retailBrand string Marque de l'appareil, le cas échéant Consultez android.os.Build.BRAND
sdkVersion integer Version de compatibilité de l'API.

Méthodes

forceReportUpload
Importe un rapport contenant les modifications apportées aux états des applications sur l'appareil depuis le dernier rapport généré. Vous pouvez appeler cette méthode jusqu'à trois fois toutes les 24 heures pour un appareil donné.
get
Récupère les détails d'un appareil.
getState
Indique si l'accès d'un appareil aux services Google est activé ou désactivé. L'état de l'appareil ne prend effet que si l'application des règles EMM sur les appareils Android est activée dans la console d'administration Google. Sinon, l'état de l'appareil est ignoré, et tous les appareils sont autorisés à accéder aux services Google. Cette fonctionnalité n'est disponible que pour les utilisateurs gérés par Google.
liste
Récupère les ID de tous les appareils d'un utilisateur.
setState
Détermine si l'accès d'un appareil aux services Google est activé ou désactivé. L'état de l'appareil ne prend effet que si l'application des règles EMM sur les appareils Android est activée dans la console d'administration Google. Sinon, l'état de l'appareil est ignoré et tous les appareils sont autorisés à accéder aux services Google. Cette fonctionnalité n'est disponible que pour les utilisateurs gérés par Google.
update
Met à jour la stratégie de l'appareil.

Pour vous assurer que la règle est correctement appliquée, vous devez empêcher les comptes non gérés d'accéder à Google Play en définissant allowed_accounts dans la configuration gérée du package Google Play. Consultez la section Limiter les comptes dans Google Play.