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 Devices représente un appareil mobile géré par l'EMM et appartenant à un utilisateur d'entreprise 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
  },
  "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 Notes
androidId string ID Android des services Google Play pour l'appareil, encodé sous forme de chaîne hexadécimale minuscule. Par exemple, "123456789abcdef0".
device string Nom de code matériel interne de l'appareil. Ce résultat provient de android.os.Build.DEVICE. (champ nommé "device" per logs/wireless/android/android_checkin.proto)
kind string
latestBuildFingerprint string Empreinte numérique du build de l'appareil, si elle est connue.
maker string Fabricant de l'appareil. Ce résultat provient de android.os.Build.MANUFACTURER.
managementType string Indique dans quelle mesure l'appareil est contrôlé par un fournisseur EMM Google Play d'entreprise dans différentes configurations de déploiement.

Les valeurs possibles sont les suivantes:
  • "managedDevice" : appareil dont l'outil de contrôle des règles relatives aux appareils (DPC) est le propriétaire de l'EMM.
  • "managedProfile" : appareil qui dispose d'un profil géré par le DPC (le DPC est le propriétaire du profil) en plus d'un profil personnel distinct qu'il ne peut pas utiliser.
  • "containerApp", n'est plus utilisé (obsolète).
  • "unmanagedProfile" est 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. Ce résultat provient de android.os.Build.MODEL.
policy nested object Règle appliquée à l'appareil.
policy.autoUpdatePolicy string Contrôle à quel moment les mises à jour automatiques des applications sur l'appareil peuvent être appliquées.

Autre solution recommandée: autoUpdateMode, qui est défini par application, offre une plus grande flexibilité concernant la fréquence des mises à 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 toujours les mises à jour automatiques. "never" désactive les mises à jour automatiques. "wifiOnly" active les mises à jour automatiques uniquement lorsque l'appareil est connecté au Wi-Fi.

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

Les valeurs possibles sont les suivantes :
  • "deviceReportDisabled"
  • "deviceReportEnabled"
policy.maintenanceWindow nested object L'intervalle de maintenance définissant le moment auquel les applications exécutées au premier plan doivent être mis à jour.
policy.maintenanceWindow.durationMs long Durée de l'intervalle 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. Windows peut couvrir minuit.
policy.productAvailabilityPolicy string Disponibilité accordée à l'appareil pour les produits spécifiés. "all" permet à l'appareil d'accéder à tous les produits, quel que soit leur état d'approbation. "all" n'active pas la visibilité automatique des pistes "alpha" ou "bêta". La "liste blanche" permet à l'appareil d'accéder aux produits spécifiés dans productPolicy[]. Seuls les produits approuvés ou ceux précédemment approuvés (produits avec une approbation révoquée) par l'entreprise peuvent être ajoutés à la liste blanche. Si aucune valeur n'est spécifiée, la disponibilité définie au niveau de l'utilisateur est appliquée par défaut.

Les valeurs possibles sont les suivantes :
  • "all"
  • "whitelist"
policy.productPolicy[] list Liste des règles concernant les produits. L'attribut productAvailabilityPolicy doit être défini sur WHITELIST ou ALL pour que les règles du produit 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 ne pouvez spécifier qu'une seule contrainte.

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

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

Les valeurs possibles 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 Installation automatique. Si cette valeur n'est pas configurée, 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é. Plus le nombre est faible, plus la priorité est élevée.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer Version minimale de l'application. Si une version antérieure de l'application est installée, elle est mise à jour automatiquement selon les contraintes d'installation automatique, au lieu d'attendre la mise à jour automatique habituelle. Vous pouvez définir un code de version minimal pour 20 applications par appareil au maximum.
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, lorsqu'un utilisateur modifie manuellement les paramètres de l'appareil, ces modifications sont ignorées.

Les valeurs possibles sont les suivantes :
  • "autoUpdateDefault"
  • "autoUpdateHighPriority"
  • "autoUpdatePostponed"
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[] list Configuration d'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 utilisant Android WebView. L'application Authenticator doit déjà être le gestionnaire par défaut pour l'URL d'authentification sur l'appareil.
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[].uri string Une URL d'authentification.
policy.productPolicy[].managedConfiguration nested object Configuration gérée pour le 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 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 des propriétés gérées pour cette configuration.
policy.productPolicy[].managedConfiguration.managedProperty[].key string Clé unique qui identifie la propriété.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean Valeur booléenne. Elle n'est présente que si le type de la propriété est une valeur booléenne.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object Groupe de propriétés gérées : n'apparaît que si le type de la propriété est un groupe.
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. Elle ne sera présente 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 du nombre entier : elle n'est présente que si le type de la propriété est entier.
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string Valeur de la chaîne : elle n'est présente que si le type de la propriété est "string", "choice" ou "hidden".
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list Liste des valeurs de chaîne (n'est présente que si le type de la propriété est à sélection multiple).
policy.productPolicy[].managedConfiguration.productId string ID du produit auquel correspond la configuration géré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 au(x) canal(s) de lancement de produit spécifiés, identifiés par trackIds. Vous pouvez obtenir la liste des canaux de publication 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. Ce résultat provient de android.os.Build.PRODUCT.
report nested object Rapport sur les appareils mis à jour avec les derniers états de l'application.
report.appState[] list Liste des états des applications définis par les applications gérées sur l'appareil. Les états de l'application sont définis par ses développeurs. Ce champ est toujours présent.
report.appState[].keyedAppState[] list Liste des états associés à l'application. Ce champ est toujours présent.
report.appState[].keyedAppState[].data string Champ supplémentaire destiné aux données lisibles par un ordinateur. Par exemple, un nombre ou un objet JSON. Pour éviter les attaques XSS, nous vous recommandons de supprimer le code HTML des données avant de les afficher.
report.appState[].keyedAppState[].key string Clé indiquant l'élément pour lequel l'application fournit un état. 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 le code HTML de la clé avant de l'afficher. Ce champ est toujours présent.
report.appState[].keyedAppState[].message string Message de format libre et lisible décrivant l'état de l'application. Par exemple, un message d'erreur. Pour éviter les attaques XSS, nous vous recommandons de supprimer le 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 possibles sont les suivantes :
  • "severityError"
  • "severityInfo"
report.appState[].keyedAppState[].stateTimestampMillis long Horodatage de la définition de l'état 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 Horodatage 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, si elle est définie. Consultez android.os.Build.BRAND
sdkVersion integer Version de compatibilité de l'API.

Méthodes

forceReportUpload
Importation d'un rapport contenant tous les changements d'état de l'application sur l'appareil depuis la génération du dernier rapport. Vous pouvez appeler cette méthode jusqu'à trois fois toutes les 24 heures pour un appareil donné.
obtenir
Récupère les détails d'un appareil.
getState
Récupère 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 option n'est disponible que pour les utilisateurs gérés par Google.
list
Récupère les ID de tous les appareils d'un utilisateur.
setState
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 option n'est disponible que pour les utilisateurs gérés par Google.
mettre à jour
Met à jour les règles relatives aux appareils.

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. Pour en savoir plus, consultez Limiter les comptes sur Google Play.