Devices

Para obtener una lista de métodos para este recurso, consulta al final de esta página.

Representaciones de recursos

Un recurso de dispositivos representa un dispositivo móvil que administra el EMM y que pertenece a un usuario empresarial específico.

{
  "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
}
Nombre de la propiedad Valor Descripción Notas
androidId string Es el ID de Android de Servicios de Google Play del dispositivo codificado como una cadena hexadecimal en minúsculas. Por ejemplo, "123456789abcdef0".
device string Es el nombre interno del hardware del dispositivo. Proviene de android.os.Build.DEVICE. (campo llamado "device" según logs/wireless/android/android_checkin.proto)
kind string
latestBuildFingerprint string La huella digital de compilación del dispositivo, si se conoce.
maker string Es el fabricante del dispositivo. Proviene de android.os.Build.MANUFACTURER.
managementType string Identifica hasta qué punto el dispositivo está controlado por un EMM de Google Play administrado en varias configuraciones de implementación.

Entre los valores posibles, se incluyen los siguientes:
  • "managedDevice" es un dispositivo que tiene el controlador de política de dispositivo (DPC) de EMM como propietario del dispositivo.
  • "managedProfile", un dispositivo que tiene un perfil administrado por el DPC (el DPC es el propietario del perfil), además de un perfil personal separado que no está disponible para el DPC.
  • "containerApp", ya no se usa (obsoleto).
  • "unmanagedProfile", un dispositivo al que el administrador del dominio permitió que use la Consola del administrador para habilitar el privilegio) usar Google Play administrado, pero que el perfil no es propiedad de un DPC.


Los valores aceptables son los siguientes:
  • "containerApp"
  • "managedDevice"
  • "managedProfile"
  • "unmanagedProfile"
model string El nombre del modelo del dispositivo. Proviene de android.os.Build.MODEL.
policy nested object La política aplicada en el dispositivo.
policy.autoUpdatePolicy string Controla cuándo se pueden aplicar las actualizaciones automáticas de apps en el dispositivo.

Alternativa recomendada: autoUpdateMode, que se establece por app, proporciona una mayor flexibilidad en cuanto a la frecuencia de actualización.

Cuando autoUpdateMode se establece en AUTO_UPDATE_POSTPONED o AUTO_UPDATE_HIGH_PRIORITY, autoUpdatePolicy no tiene ningún efecto.

“choiceToTheUser” Permite que el usuario del dispositivo configure la política de actualización de apps. "siempre" habilita las actualizaciones automáticas. “nunca” Inhabilita las actualizaciones automáticas. "Solo Wi-Fi" habilita las actualizaciones automáticas solo cuando el dispositivo está conectado a Wi-Fi.

Los valores aceptables son los siguientes:
  • "always"
  • "choiceToTheUser"
  • "never"
  • "wifiOnly"
policy.deviceReportPolicy string Indica si el dispositivo informa los estados de la app a EMM. El valor predeterminado es "deviceReportDisabled".

Los valores aceptables son los siguientes:
  • "deviceReportDisabled"
  • "deviceReportEnabled"
policy.maintenanceWindow nested object El período de mantenimiento, que define cuándo se deben actualizar las apps que se ejecutan en primer plano.
policy.maintenanceWindow.durationMs long Duración del período de mantenimiento, en milisegundos. La duración debe ser de entre 30 minutos y 24 horas (inclusive).
policy.maintenanceWindow.startTimeAfterMidnightMs long Hora de inicio del período de mantenimiento, en milisegundos después de la medianoche en el dispositivo. Las ventanas pueden abarcar la medianoche.
policy.productAvailabilityPolicy string Indica la disponibilidad que se le otorga al dispositivo para los productos especificados. “todos” Otorga al dispositivo acceso a todos los productos, independientemente del estado de aprobación. “todos” no habilita la visibilidad automática de "alfa" o "beta" pistas. "lista blanca" otorga al dispositivo acceso a los productos especificados en productPolicy[]. Solo se pueden incluir en la lista blanca los productos aprobados o los que la empresa aprobó previamente (productos con aprobación revocada). Si no se proporciona ningún valor, la disponibilidad configurada a nivel del usuario se aplica de forma predeterminada.

Los valores aceptables son los siguientes:
  • "all"
  • "whitelist"
policy.productPolicy[] list Es la lista de políticas de productos. Para que se apliquen las políticas de productos, productAvailabilityPolicy debe establecerse en WHITELIST o ALL.
policy.productPolicy[].autoInstallPolicy nested object Es la política de instalación automática del producto.
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[] list Las restricciones para la instalación automática de la app Puedes especificar un máximo de una restricción.

policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].chargingStateConstraint string Restricción del estado de carga.

Los valores aceptables son los siguientes:
  • "chargingNotRequired"
  • "chargingRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].deviceIdleStateConstraint string Restricción de estado de inactividad del dispositivo.

Los valores aceptables son los siguientes:
  • "deviceIdleNotRequired"
  • "deviceIdleRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].networkTypeConstraint string Restricción de tipo de red.

Los valores aceptables son los siguientes:
  • "anyNetwork"
  • "unmeteredNetwork"
policy.productPolicy[].autoInstallPolicy.autoInstallMode string El modo de instalación automática Si no la estableces, el valor predeterminado será "doNotAutoInstall". Las apps se instalan automáticamente sin importar el período de mantenimiento establecido.

Los valores aceptables son los siguientes:
  • "autoInstallOnce"
  • "doNotAutoInstall"
  • "forceAutoInstall"
policy.productPolicy[].autoInstallPolicy.autoInstallPriority integer La prioridad de la instalación, como un número entero sin firma. Un número más bajo significa una mayor prioridad.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer La versión mínima de la app. Si hay una versión anterior de la app instalada, esta se actualizará automáticamente según las restricciones de instalación automática, en lugar de esperar la actualización automática habitual. Puedes establecer un código de versión mínimo para un máximo de 20 apps por dispositivo.
policy.productPolicy[].autoUpdateMode string El modo de actualización automática del producto. Cuando se usa autoUpdateMode, siempre tiene prioridad sobre la elección del usuario. Por lo tanto, cuando un usuario realiza cambios en la configuración del dispositivo de forma manual, estos cambios se ignoran.

Los valores aceptables son los siguientes:
  • "autoUpdateDefault"
  • "autoUpdateHighPriority"
  • "autoUpdatePostponed"
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[] list Una configuración de URL de autenticación para la app de autenticación de un proveedor de identidad. Esto ayuda a iniciar la app de autenticación del proveedor de identidad durante la autenticación en una app privada con WebView de Android. La app del Autenticador ya debería ser el controlador predeterminado de la URL de autenticación en el dispositivo.
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[].uri string Una URL de autenticación
policy.productPolicy[].managedConfiguration nested object Es la configuración administrada del producto.
policy.productPolicy[].managedConfiguration.configurationVariables nested object Contiene el ID del perfil de configuración administrado y el conjunto de variables de configuración (si corresponde) definidas para el usuario.
policy.productPolicy[].managedConfiguration.configurationVariables.kind string
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId string El ID de la configuración administrada.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[] list Es el conjunto de variables que se atribuye al usuario.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].kind string
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].placeholder string La cadena de marcador de posición; definidas por EMM.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string El valor del marcador de posición, específico del usuario.
policy.productPolicy[].managedConfiguration.kind string Obsoleto.

policy.productPolicy[].managedConfiguration.managedProperty[] list Es el conjunto de propiedades administradas para esta configuración.
policy.productPolicy[].managedConfiguration.managedProperty[].key string Es la clave única que identifica la propiedad.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean El valor booleano: este solo estará presente si el tipo de propiedad es bool.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object El paquete de propiedades administradas (esto solo estará presente si el tipo de propiedad es el paquete)
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list Es la lista de propiedades administradas.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[] list Es la lista de paquetes de propiedades. Solo estará presente si el tipo de propiedad es bundle_array.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[].managedProperty[] list Es la lista de propiedades administradas.
policy.productPolicy[].managedConfiguration.managedProperty[].valueInteger integer El valor entero, que solo estará presente si el tipo de propiedad es un número entero
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string El valor de cadena, que solo estará presente si el tipo de propiedad es Oculto o Elección.
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list La lista de valores de cadena, que solo estará presente si el tipo de propiedad es de selección múltiple.
policy.productPolicy[].managedConfiguration.productId string El ID del producto para el que es la configuración administrada, p.ej., “app:com.google.android.gm”.
policy.productPolicy[].productId string Es el ID del producto. Por ejemplo, "app:com.google.android.gm".
policy.productPolicy[].trackIds[] list Otorga visibilidad del dispositivo a los segmentos de productos especificados, identificados por trackIds. La lista de segmentos de un producto se puede obtener llamando a Products.Get.
policy.productPolicy[].tracks[] list Obsoleta. Usa trackIds en su lugar.
product string Es el nombre del producto del dispositivo. Proviene de android.os.Build.PRODUCT.
report nested object El informe del dispositivo se actualiza con los estados más recientes de la app.
report.appState[] list Lista de estados de apps establecidos por apps administradas en el dispositivo. Los desarrolladores de la app definen los estados de la app. Este campo siempre estará presente.
report.appState[].keyedAppState[] list Lista de estados de app con clave. Este campo siempre estará presente.
report.appState[].keyedAppState[].data string Campo adicional destinado a datos aptos para la lectura automática. Por ejemplo, un número o un objeto JSON. Para evitar la XSS, te recomendamos que quites el código HTML de los datos antes de mostrarlos.
report.appState[].keyedAppState[].key string Clave que indica para qué proporciona un estado la app. El desarrollador de la app establece el contenido de la clave. Para evitar XSS, te recomendamos que quites el código HTML de la clave antes de mostrarla. Este campo siempre estará presente.
report.appState[].keyedAppState[].message string Mensaje de formato libre y legible por humanos que describe el estado de la app. Por ejemplo, un mensaje de error. Para evitar la XSS, te recomendamos que quites el código HTML del mensaje antes de mostrarlo.
report.appState[].keyedAppState[].severity string Gravedad del estado de la app. Este campo siempre estará presente.

Los valores aceptables son los siguientes:
  • "severityError"
  • "severityInfo"
report.appState[].keyedAppState[].stateTimestampMillis long Marca de tiempo del momento en que la app estableció el estado en milisegundos desde el ciclo de entrenamiento. Este campo siempre estará presente.
report.appState[].packageName string Es el nombre del paquete de la app. Este campo siempre estará presente.
report.lastUpdatedTimestampMillis long Es la marca de tiempo de la última actualización del informe en milisegundos desde el ciclo de entrenamiento. Este campo siempre estará presente.
retailBrand string Es la marca minorista del dispositivo, si se estableció. Consulta android.os.Build.BRAND.
sdkVersion integer Versión de compatibilidad de la API.

Métodos

forceReportUpload
Carga un informe que contiene los cambios en el estado de la app en el dispositivo desde se generó el último informe. Puedes llamar a este método hasta 3 veces cada 24 horas para un dispositivo determinado.
get
Recupera los detalles de un dispositivo.
getState
Recupera si el acceso de un dispositivo a los servicios de Google está habilitado o inhabilitado. El estado del dispositivo solo se aplica si se aplican políticas de EMM en Android esté habilitado en la Consola del administrador de Google. De lo contrario, se ignorará el estado del dispositivo y todos los dispositivos podrán acceder. a los servicios de Google. Esta opción solo se admite para los usuarios administrados por Google.
list
Recupera los ID de todos los dispositivos de un usuario.
setState
Establece si se habilita o inhabilita el acceso de un dispositivo a los servicios de Google. El estado del dispositivo solo se aplica si se aplican políticas de EMM en Android esté habilitado en la Consola del administrador de Google. De lo contrario, se ignorará el estado del dispositivo y todos los dispositivos podrán acceder. a los servicios de Google. Esta opción solo se admite para los usuarios administrados por Google.
actualización
Actualiza la política de dispositivo.

Para asegurarte de que la política se aplique correctamente, debes impedir que las aplicaciones accedan a Google Play estableciendo la allowed_accounts en la configuración administrada de la Paquete de Play. Consulta la restricción en Google Play.