Devices

Per un elenco dei metodi per questa risorsa, consulta la fine di questa pagina.

Rappresentazioni delle risorse

Una risorsa Dispositivi rappresenta un dispositivo mobile gestito dall'EMM e appartenente a un utente aziendale specifico.

{
  "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
}
Nome proprietà Valore Descrizione Note
androidId string L'ID Android di Google Play Services per il dispositivo codificato come stringa esadecimale in minuscolo. Ad esempio, "123456789abcdef0".
device string Il nome in codice dell'hardware interno del dispositivo. Questo messaggio proviene da android.os.Build.DEVICE. (campo denominato "device" per logs/wireless/android/android_checkin.proto)
kind string
latestBuildFingerprint string L'impronta build del dispositivo, se nota.
maker string Il produttore del dispositivo. Questo messaggio proviene da android.os.Build.MANUFACTURER.
managementType string Identifica il grado in cui il dispositivo è controllato da un EMM di Google Play gestito in varie configurazioni di implementazione.

I valori possibili includono:
  • "managedDevice", un dispositivo che ha il controller dei criteri dei dispositivi (DPC) dell'EMM come proprietario del dispositivo.
  • "managedProfile", un dispositivo con un profilo gestito dal DPC (il DPC è il proprietario del profilo) oltre a un profilo personale separato non disponibile per il DPC.
  • "containerApp", non più utilizzato (ritirato).
  • "unmanagedProfile", un dispositivo a cui è stato consentito (dall'amministratore del dominio, che utilizza la Console di amministrazione per attivare il privilegio) di utilizzare Google Play gestito, ma il profilo non è di proprietà di un DPC.


I valori accettati sono:
  • "containerApp"
  • "managedDevice"
  • "managedProfile"
  • "unmanagedProfile"
model string Il nome del modello del dispositivo. Questo messaggio proviene da android.os.Build.MODEL.
policy nested object Il criterio applicato al dispositivo.
policy.autoUpdatePolicy string Controlla quando è possibile applicare gli aggiornamenti automatici delle app sul dispositivo.

Alternativa consigliata: autoUpdateMode, impostato per app, offre una maggiore flessibilità in termini di frequenza di aggiornamento.

Quando autoUpdateMode è impostato su AUTO_UPDATE_POSTPONED o AUTO_UPDATE_HIGH_PRIORITY, autoUpdatePolicy non ha alcun effetto.
  • choiceToTheUser consente all'utente del dispositivo di configurare il criterio di aggiornamento delle app.
  • always attiva gli aggiornamenti automatici.
  • never disattiva gli aggiornamenti automatici.
  • wifiOnly attiva gli aggiornamenti automatici solo quando il dispositivo è connesso alla rete Wi-Fi.


I valori accettati sono:
  • "always"
  • "choiceToTheUser"
  • "never"
  • "wifiOnly"
policy.deviceReportPolicy string Indica se il dispositivo segnala gli stati delle app all'EMM. Il valore predefinito è "deviceReportDisabled".

I valori accettati sono:
  • "deviceReportDisabled"
  • "deviceReportEnabled"
policy.maintenanceWindow nested object Il periodo di manutenzione che definisce quando devono essere aggiornate le app in esecuzione in primo piano.
policy.maintenanceWindow.durationMs long Durata del periodo di manutenzione in millisecondi. La durata deve essere compresa tra 30 minuti e 24 ore (incluse).
policy.maintenanceWindow.startTimeAfterMidnightMs long Ora di inizio del periodo di manutenzione, in millisecondi dopo mezzanotte sul dispositivo. Le finestre possono includere mezzanotte.
policy.policyId string Un identificatore per le norme che verrà trasmesso con il feedback sull'installazione dell'app inviato dal Play Store.
policy.productAvailabilityPolicy string La disponibilità concessa al dispositivo per i prodotti specificati. "all" concede al dispositivo l'accesso a tutti i prodotti, indipendentemente dallo stato di approvazione. "all" non attiva la visibilità automatica dei canali "alpha" o "beta". "whitelist" concede al dispositivo l'accesso ai prodotti specificati in productPolicy[]. Solo i prodotti approvati o che sono stati approvati in precedenza (prodotti con approvazione revocata) dall'azienda possono essere inseriti nella lista consentita. Se non viene fornito alcun valore, per impostazione predefinita viene applicata la disponibilità impostata a livello di utente.

I valori accettati sono:
  • "all"
  • "whitelist"
policy.productPolicy[] list L'elenco delle norme relative ai prodotti. Per applicare le norme del prodotto, il valore productAvailabilityPolicy deve essere impostato su WHITELIST o ALL.
policy.productPolicy[].autoInstallPolicy nested object Il criterio di installazione automatica del prodotto.
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[] list I vincoli per l'installazione automatica dell'app. Puoi specificare un massimo di un vincolo.

policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].chargingStateConstraint string Limitazione dello stato di ricarica.

I valori accettati sono:
  • "chargingNotRequired"
  • "chargingRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].deviceIdleStateConstraint string Limitazione dello stato di inattività del dispositivo.

I valori accettati sono:
  • "deviceIdleNotRequired"
  • "deviceIdleRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].networkTypeConstraint string Vincolo del tipo di rete.

I valori accettati sono:
  • "anyNetwork"
  • "unmeteredNetwork"
policy.productPolicy[].autoInstallPolicy.autoInstallMode string La modalità di installazione automatica. Se non impostato, il valore predefinito è "doNotAutoInstall". Un'app viene installata automaticamente indipendentemente da una finestra di manutenzione impostata.

I valori accettati sono:
  • "autoInstallOnce"
  • "doNotAutoInstall"
  • "forceAutoInstall"
policy.productPolicy[].autoInstallPolicy.autoInstallPriority integer La priorità dell'installazione, come numero intero non firmato. Un numero inferiore indica una priorità più elevata.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer La versione minima dell'app. Se è installata una versione precedente dell'app, questa verrà aggiornata automaticamente in base ai vincoli di installazione automatica, anziché attendere l'aggiornamento automatico regolare. Puoi impostare un codice di versione minima per un massimo di 20 app per dispositivo.
policy.productPolicy[].autoUpdateMode string La modalità di aggiornamento automatico del prodotto. Quando viene utilizzato, autoUpdateMode ha sempre la precedenza sulla scelta dell'utente. Di conseguenza, quando un utente apporta modifiche alle impostazioni del dispositivo manualmente, queste modifiche vengono ignorate.

I valori accettati sono:
  • "autoUpdateDefault"
  • "autoUpdateHighPriority"
  • "autoUpdatePostponed"
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[] list Una configurazione dell'URL di autenticazione per l'app di autenticazione di un provider di identità. In questo modo, è possibile avviare l'app di autenticazione del provider di identità durante l'autenticazione in un'app privata che utilizza Android WebView. L'app di autenticazione dovrebbe già essere il gestore predefinito per l'URL di autenticazione sul dispositivo.
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[].uri string Un URL di autenticazione.
policy.productPolicy[].managedConfiguration nested object La configurazione gestita del prodotto.
policy.productPolicy[].managedConfiguration.configurationVariables nested object Contiene l'ID del profilo di configurazione gestita e l'eventuale insieme di variabili di configurazione definite per l'utente.
policy.productPolicy[].managedConfiguration.configurationVariables.kind string
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId string L'ID delle impostazioni delle configurazioni gestite.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[] list L'insieme di variabili attribuito all'utente.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].kind string
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].placeholder string La stringa segnaposto, definita dall'EMM.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string Il valore del segnaposto, specifico per l'utente.
policy.productPolicy[].managedConfiguration.kind string Ritirato.

policy.productPolicy[].managedConfiguration.managedProperty[] list L'insieme di proprietà gestite per questa configurazione.
policy.productPolicy[].managedConfiguration.managedProperty[].key string La chiave univoca che identifica la proprietà.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean Il valore booleano, che sarà presente solo se il tipo della proprietà è bool.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object Il bundle di proprietà gestite. Questo valore sarà presente solo se il tipo di proprietà è bundle.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list L'elenco delle proprietà gestite.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[] list L'elenco di pacchetti di proprietà. Questo elemento sarà presente solo se il tipo della proprietà è bundle_array.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[].managedProperty[] list L'elenco delle proprietà gestite.
policy.productPolicy[].managedConfiguration.managedProperty[].valueInteger integer Il valore intero, che sarà presente solo se il tipo della proprietà è intero.
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string Il valore stringa, che sarà presente solo se il tipo della proprietà è stringa, scelta o nascosta.
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list L'elenco di valori di stringa, che sarà presente solo se il tipo della proprietà è multiselect.
policy.productPolicy[].managedConfiguration.productId string L'ID del prodotto a cui si riferisce la configurazione gestita, ad esempio "app:com.google.android.gm".
policy.productPolicy[].productId string L'ID del prodotto. Ad esempio, "app:com.google.android.gm".
policy.productPolicy[].trackIds[] list Concede la visibilità del dispositivo ai canali di rilascio del prodotto specificati, identificati da trackIds. L'elenco dei canali di uscita di un prodotto può essere ottenuto chiamando Products.Get.
policy.productPolicy[].tracks[] list Deprecato. Utilizza invece trackIds.
product string Il nome del prodotto del dispositivo. Questo messaggio proviene da android.os.Build.PRODUCT.
report nested object Il report del dispositivo aggiornato con gli stati più recenti dell'app.
report.appState[] list Elenco degli stati delle app impostati dalle app gestite sul dispositivo. Gli stati dell'app sono definiti dagli sviluppatori dell'app. Questo campo sarà sempre presente.
report.appState[].keyedAppState[] list Elenco degli stati delle app con chiave. Questo campo sarà sempre presente.
report.appState[].keyedAppState[].data string Campo aggiuntivo destinato ai dati leggibili dalla macchina. Ad esempio, un numero o un oggetto JSON. Per evitare gli attacchi XSS, ti consigliamo di rimuovere qualsiasi codice HTML dai dati prima di visualizzarli.
report.appState[].keyedAppState[].key string Chiave che indica per cosa l'app fornisce uno stato. I contenuti della chiave vengono impostati dallo sviluppatore dell'app. Per evitare attacchi XSS, ti consigliamo di rimuovere qualsiasi codice HTML dalla chiave prima di visualizzarla. Questo campo sarà sempre presente.
report.appState[].keyedAppState[].message string Messaggio in formato libero e leggibile che descrive lo stato dell'app. Ad esempio, un messaggio di errore. Per evitare gli attacchi XSS, ti consigliamo di rimuovere qualsiasi codice HTML dal messaggio prima di visualizzarlo.
report.appState[].keyedAppState[].severity string Gravità dello stato dell'app. Questo campo sarà sempre presente.

I valori accettati sono:
  • "severityError"
  • "severityInfo"
report.appState[].keyedAppState[].stateTimestampMillis long Timestamp dell'ora in cui l'app ha impostato lo stato in millisecondi dall'epoca. Questo campo sarà sempre presente.
report.appState[].packageName string Il nome del pacchetto dell'app. Questo campo sarà sempre presente.
report.lastUpdatedTimestampMillis long Il timestamp dell'ultimo aggiornamento del report in millisecondi dall'epoca. Questo campo sarà sempre presente.
retailBrand string Brand di vendita al dettaglio del dispositivo, se impostato. Consulta android.os.Build.BRAND
sdkVersion integer Versione di compatibilità dell'API.

Metodi

forceReportUpload
Carica un report contenente eventuali modifiche degli stati dell'app sul dispositivo dall'ultimo report generato. Puoi chiamare questo metodo fino a 3 volte ogni 24 ore per un determinato dispositivo.
get
Recupero i dettagli di un dispositivo.
getState
Recupero se l'accesso ai servizi Google di un dispositivo è attivo o disattivato. Lo stato del dispositivo viene applicato solo se l'applicazione dei criteri EMM sui dispositivi Android è attivata nella Console di amministrazione Google. In caso contrario, lo stato del dispositivo viene ignorato e a tutti i dispositivi viene consentito l'accesso ai servizi Google. Questa opzione è supportata solo per gli utenti gestiti da Google.
list
Recupero degli ID di tutti i dispositivi di un utente.
setState
Imposta se l'accesso ai servizi Google di un dispositivo è attivo o disattivato. Lo stato del dispositivo viene applicato solo se l'applicazione dei criteri EMM sui dispositivi Android è attivata nella Console di amministrazione Google. In caso contrario, lo stato del dispositivo viene ignorato e a tutti i dispositivi viene consentito l'accesso ai servizi Google. Questa opzione è supportata solo per gli utenti gestiti da Google.
update
Aggiorna il criterio del dispositivo.

Per assicurarti che il criterio venga applicato correttamente, devi impedire agli account non gestiti di accedere a Google Play impostando allowed_accounts nella configurazione gestita per il pacchetto Google Play. Consulta la sezione su come limitare gli account su Google Play.