Devices

Si deseas obtener una lista de métodos para este recurso, consulta el final de esta página.

Representaciones de recursos

Un recurso de dispositivos representa un dispositivo móvil que administra 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 string hexadecimal en minúscula. Por ejemplo, "123456789abcdef0".
device string Es el nombre interno del hardware del dispositivo. Proviene de android.os.Build.DEVICE. (campo llamado "device" por registros/wireless/android/android_checkin.proto)
kind string
latestBuildFingerprint string La huella digital de compilación del dispositivo, si se conoce.
maker string Indica el fabricante del dispositivo. Proviene de android.os.Build.MANUFACTURER.
managementType string Identifica en qué medida el dispositivo es controlado por un EMM de Google Play administrado en varias configuraciones de implementación.

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


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

Alternativa recomendada: autoUpdateMode, que se configura 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 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. "wifiOnly" 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 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 Es la 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 Es la disponibilidad otorgada al dispositivo para los productos especificados. La opción "todos" otorga al dispositivo acceso a todos los productos, independientemente del estado de aprobación. La opción "todos" no habilita la visibilidad automática de las pistas "alfa" ni "beta". La opción "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 haya aprobado anteriormente (productos con aprobación revocada). Si no se proporciona ningún valor, la disponibilidad establecida a nivel del usuario se aplica de forma predeterminada.

Los valores aceptables son los siguientes:
  • "all"
  • "whitelist"
policy.productPolicy[] list La lista de políticas de productos. Para que se apliquen las políticas del producto, productAvailabilityPolicy debe establecerse como WHITELIST o ALL.
policy.productPolicy[].autoInstallPolicy nested object 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 una restricción como máximo.

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 inactivo 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 Modo de instalación automática Si no se configura, el valor predeterminado es "doNotAutoInstall". Se instala automáticamente una app, independientemente del 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. Cuanto más bajo sea el número, mayor será la prioridad.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer La versión mínima de la app. Si se instala una versión anterior, la app se actualizará automáticamente según las restricciones de la instalación automática, en lugar de esperar a 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 Es 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 autenticador de un proveedor de identidad. Esto ayuda a iniciar la app de autenticación del proveedor de identidad durante la autenticación que se lleva a cabo en una app privada usando WebView de Android. La app del Autenticador ya debería ser el controlador predeterminado para 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 las hubiera) 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 string del marcador de posición; definida por EMM.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string El valor del marcador de posición, específico para el 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 La clave única que identifica la propiedad.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean El valor booleano: Solo estará presente si el tipo de propiedad es bool.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object El paquete de propiedades administradas: Solo estará presente si el tipo de propiedad es un paquete.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list Es la lista de propiedades administradas.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[] list 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 de número entero (esto solo estará presente si el tipo de propiedad es un número entero)
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string El valor de string: Solo estará presente si el tipo de propiedad es una string, una opción o una opción oculta.
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list La lista de valores de string: Solo estará presente si el tipo de propiedad es de selección múltiple.
policy.productPolicy[].managedConfiguration.productId string Es 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 especificados, identificados por trackIds. La lista de segmentos de un producto se puede obtener llamando a Products.Get.
policy.productPolicy[].tracks[] list Ya no está disponible. 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 de dispositivos se actualizó con los estados más recientes de la app.
report.appState[] list Lista de estados de apps establecidos por las 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 apps con clave. Este campo siempre estará presente.
report.appState[].keyedAppState[].data string Es un campo adicional diseñado para datos legibles por máquinas. Por ejemplo, un objeto JSON o número. Para evitar 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 en formato libre y legible que describe el estado de la app. Por ejemplo, un mensaje de error. Para evitar 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 la época. 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 la época. Este campo siempre estará presente.
retailBrand string Es la marca minorista del dispositivo, si se configuró. Consulta android.os.Build.BRAND.
sdkVersion integer Versión de compatibilidad de API.

Métodos

forceReportUpload
Sube un informe que contiene los cambios en los estados de la app del dispositivo desde que se generó el último informe. Puedes llamar a este método hasta 3 veces cada 24 horas para un dispositivo determinado.
obtener
Recupera los detalles de un dispositivo.
getState
Recupera si un dispositivo tiene acceso habilitado o inhabilitado. El estado del dispositivo solo se aplica si la aplicación de políticas de EMM en dispositivos Android está habilitada 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 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 la aplicación de políticas de EMM en dispositivos Android está habilitada 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 usuarios administrados por Google.
actualizar
Actualiza la política de dispositivo.

Para asegurarte de que se aplique correctamente la política, debes evitar que las cuentas no administradas accedan a Google Play estableciendo allowed_accounts en la configuración administrada del paquete de Google Play. Consulta cómo restringir cuentas en Google Play.