Devices

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

Representaciones de recursos

Un recurso de dispositivos representa un dispositivo móvil administrado por la 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,
    "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
}
Nombre de la propiedad Valor Descripción Notas
androidId string El ID de Android de los Servicios de Google Play del dispositivo codificado como una cadena hexadecimal en minúsculas. Por ejemplo, "123456789abcdef0".
device string Es el nombre en código interno del hardware del dispositivo. Esto proviene de android.os.Build.DEVICE. (campo llamado "device" en 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. Esto proviene de android.os.Build.MANUFACTURER.
managementType string Identifica el grado en que un EMM administrado de Google Play controla el dispositivo 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) del 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 independiente que no está disponible para el DPC.
  • "containerApp", que 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 el perfil no es propiedad de un DPC.


Los valores aceptables son los siguientes:
  • "containerApp"
  • "managedDevice"
  • "managedProfile"
  • "unmanagedProfile"
model string Es el nombre del modelo del dispositivo. Esto 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 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.
  • always habilita las actualizaciones automáticas.
  • never inhabilita las actualizaciones automáticas.
  • wifiOnly habilita las actualizaciones automáticas solo cuando el dispositivo está conectado a una red 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 al EMM. El valor predeterminado es "deviceReportDisabled".

Los valores aceptables son los siguientes:
  • "deviceReportDisabled"
  • "deviceReportEnabled"
policy.maintenanceWindow nested object Es 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, expresada 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.policyId string Es un identificador para la política que se pasará con los comentarios de instalación de la app que se envían desde Play Store.
policy.productAvailabilityPolicy string Es la disponibilidad otorgada al dispositivo para los productos especificados. "all" le otorga al dispositivo acceso a todos los productos, independientemente del estado de aprobación. "all" no habilita la visibilidad automática de los segmentos "alpha" o "beta". "whitelist" le otorga al dispositivo acceso a los productos especificados en productPolicy[]. Solo se pueden incluir en la lista de entidades permitidas los productos que la empresa aprobó o que aprobó anteriormente (productos con aprobación revocada). Si no se proporciona ningún valor, se aplica de forma predeterminada la disponibilidad establecida a nivel del usuario.

Los valores aceptables son los siguientes:
  • "all"
  • "whitelist"
policy.productPolicy[] list La lista de políticas de productos. productAvailabilityPolicy debe establecerse en WHITELIST o ALL para que se apliquen las políticas de productos.
policy.productPolicy[].autoInstallPolicy nested object La política de instalación automática del producto
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[] list Son las restricciones para instalar la app automáticamente. 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 del 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 El modo de instalación automática. Si no se establece, el valor predeterminado es "doNotAutoInstall". Una app se instala automáticamente independientemente de un período de mantenimiento establecido.

Los valores aceptables son los siguientes:
  • "autoInstallOnce"
  • "doNotAutoInstall"
  • "forceAutoInstall"
policy.productPolicy[].autoInstallPolicy.autoInstallPriority integer Es la prioridad de la instalación, como un número entero sin firmar. Un número más bajo significa una prioridad más alta.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer Es 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 instalación automática, en lugar de esperar a la actualización automática normal. Puedes establecer un código de versión mínima 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 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 realiza en una app privada con WebView de Android. La app de autenticación 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 las hay) definidas para el usuario.
policy.productPolicy[].managedConfiguration.configurationVariables.kind string
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId string El ID de la configuración de las opciones de configuración administradas.
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 Es la cadena de marcador de posición que define el EMM.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string Es 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, que solo estará presente si el tipo de la propiedad es bool.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object El paquete de propiedades administradas (solo estará presente si el tipo de la propiedad es paquete)
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list 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 la propiedad es bundle_array.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[].managedProperty[] list La lista de propiedades administradas.
policy.productPolicy[].managedConfiguration.managedProperty[].valueInteger integer Es el valor entero, que solo estará presente si el tipo de la propiedad es entero.
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string El valor de cadena, que solo estará presente si el tipo de la propiedad es cadena, elección o oculto.
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list Es la lista de valores de cadena. Solo estará presente si el tipo de la propiedad es de selección múltiple.
policy.productPolicy[].managedConfiguration.productId string Es el ID del producto para el que se creó 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 lanzamiento de productos especificados, identificados por trackIds. Para obtener la lista de segmentos de lanzamiento de un producto, llama a Products.Get.
policy.productPolicy[].tracks[] list Obsoleta. Usa trackIds en su lugar.
product string Es el nombre del producto del dispositivo. Esto proviene de android.os.Build.PRODUCT.
report nested object El informe del dispositivo se actualizó con los estados más recientes de la app.
report.appState[] list Es la 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 Es una lista de estados de apps con claves. Este campo siempre estará presente.
report.appState[].keyedAppState[].data string Es un campo adicional destinado a datos legibles por máquinas. Por ejemplo, un número o un objeto JSON. 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 Es un mensaje de formato libre legible por humanos 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 Es la 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 Marca de venta minorista del dispositivo, si está configurada Consulta android.os.Build.BRAND.
sdkVersion integer Versión de compatibilidad de la API.

Métodos

forceReportUpload
Sube un informe que contiene los cambios en los estados de la app en el dispositivo desde que 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 se aplica solo si se habilita la aplicación forzosa de las políticas de EMM en dispositivos Android en la Consola del administrador de Google. De lo contrario, se ignora el estado del dispositivo y se permite que todos los dispositivos accedan a los servicios de Google. Esta opción solo es compatible con los usuarios administrados por Google.
list
Recupera los IDs de todos los dispositivos de un usuario.
setState
Establece si el acceso de un dispositivo a los servicios de Google está habilitado o inhabilitado. El estado del dispositivo se aplica solo si se habilita la aplicación forzosa de las políticas de EMM en dispositivos Android en la Consola del administrador de Google. De lo contrario, se ignora el estado del dispositivo y se permite que todos los dispositivos accedan a los servicios de Google. Esta opción solo es compatible con los usuarios administrados por Google.
actualización
Actualiza la política del dispositivo.

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