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 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,
    "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" 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. 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" 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 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 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 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 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. La opción “todos” no habilita la visibilidad automática de los segmentos “alfa” 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 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 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 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 tienes instalada una versión anterior, esta se actualizará automáticamente según las restricciones de instalación automática, en lugar de esperar la actualización automática normal. 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 autenticador 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, definida por 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 Es el paquete de propiedades administradas (esto solo estará presente si el tipo de propiedad es el 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 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. 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. 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 Campo adicional destinado a datos aptos para la lectura automática. 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 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 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, el estado del dispositivo se ignora y todos los dispositivos tienen acceso a los servicios de Google. Esta opción solo se admite para los usuarios administrados por Google.
actualización
Actualiza la política del dispositivo.

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