Esistono diversi modi per eseguire il provisioning dei dispositivi. I tuoi clienti attività in base ai requisiti della tua azienda determinano i metodi di provisioning da utilizzare.
Nozioni di base sul provisioning dei dispositivi
Gli scenari di implementazione del provisioning dei dispositivi che i tuoi clienti vogliono dell'assistenza clienti (come BYOD o di proprietà dell'azienda) determinano le modalità di funzionamento che (ad esempio la modalità proprietario del dispositivo o la modalità proprietario del profilo). Analogamente, le modalità di e le release di Android necessarie per consentire di stabilire che implementerai.
Scenari di deployment
In uno scenario di deployment di proprietà dell'azienda, l'azienda possiede e controlla completamente i dispositivi usati dai suoi dipendenti. In genere, le organizzazioni eseguono il deployment dispositivi di proprietà dell'azienda quando devono monitorare e gestire rigorosamente l'intero dispositivo.
Le aziende che supportano uno scenario di implementazione BYOD consentono dipendenti di portare al lavoro dispositivi di proprietà personale e di utilizzarli per accesso a informazioni e applicazioni aziendali privilegiate.
Modalità di funzionamento
Le implementazioni di proprietà dell'azienda sono supportate dalla modalità proprietario del dispositivo operativo. In Android, l'app di gestione è denominata Criteri relativi ai dispositivi il controller (DPC). Il DPC applica i criteri sui dispositivi Android quando agisce come proprietario del dispositivo, gestisce l'intero dispositivo. Come proprietario del dispositivo, il DPC può eseguire azioni a livello di dispositivo, ad esempio configurare connettività, configurare le impostazioni globali ed eseguire un ripristino dei dati di fabbrica.
Le implementazioni BYOD sono supportate dalla modalità proprietario del profilo di operativa. Tramite il DPC, l'azienda abilita i dispositivi personali per l'uso lavorativo aggiungendo un profilo di lavoro all'account utente principale sul dispositivo. Il lavoro profilo è associato all'utente principale, ma come profilo separato. Come profilo proprietario, il DPC gestisce solo il profilo di lavoro sul dispositivo un controllo limitato al di fuori del profilo di lavoro.
Metodi di provisioning del proprietario del dispositivo
Devi eseguire il provisioning della modalità operativa del proprietario del dispositivo durante la configurazione iniziale di un nuovo dispositivo o dopo un ripristino dei dati di fabbrica. Impossibile eseguire il provisioning della modalità Proprietario del dispositivo su un dispositivo in qualsiasi altro momento.
A seconda del caso d'uso, esistono due tipi principali di metodi di provisioning la modalità di proprietario del dispositivo di provisioning.
- In un flusso basato sul dispositivo, gli amministratori IT possono utilizzare la tecnologia NFC per eseguire il numero di dispositivi. Questo flusso può essere utilizzato per l'account Google Play gestito o Google Workspace diversi scenari.
- In un flusso basato dall'utente, le opzioni dipendono dal fatto che l'organizzazione o meno
usa Google Workspace.
- In uno scenario di Google Workspace, l'utente aggiunge il proprio Account Google durante la configurazione iniziale del dispositivo e il DPC deve guidare l'utente attraverso passaggi per configurare il proprietario del dispositivo. Una procedura guidata dagli utenti può aiutare gli utenti finali a impostare ed è inoltre un'alternativa quando i dispositivi non supportano la tecnologia NFC.
- Se un'organizzazione non usa Google Workspace, devi usare lo account della versione gestita di Google Play.
Nota: se limiti la distribuzione della tua app a paesi specifici in Google Play, queste restrizioni vengono ignorate durante il provisioning del proprietario del dispositivo. Il DPC verrà scaricato anche se il dispositivo non si trova in un paese target.
Metodi di provisioning del proprietario del profilo
Il metodo consigliato per eseguire il provisioning della modalità operativa del proprietario del profilo dipende sull'uso o meno di Google Workspace da parte dell'organizzazione.
- Nel caso di Google Workspace, il metodo consigliato è flusso guidato dall'utente in cui l'utente aggiunge il proprio Account Google e il DPC guiderà l'utente attraverso i passaggi per impostare il proprietario del profilo.
- Se un'organizzazione non usa Google Workspace, il metodo consigliato è Account della versione gestita di Google Play.
Il metodo tradizionale, con cui all'utente viene chiesto di installare manualmente il DPC. Si basa sul download del DPC da Google Play e sull'installazione da parte dell'utente. mentre il DPC guida l'utente nel resto del processo per configurare proprietario del profilo.
Differenze di provisioning delle chiavi tra le versioni di Android
Scenario di deployment | Modalità di funzionamento | Metodo di provisioning | 5,0, 5,1 | 6.0, successive | 7.0, successive |
---|---|---|---|---|---|
Di proprietà dell'azienda | Proprietario del dispositivo | Codice QR | ✓ | ||
Account Google Play gestiti | ✓ | ✓ | |||
Account Google | ✓ | ✓ | |||
NFC | ✓ | ✓ | ✓ | ||
BYOD | Proprietario del profilo | Account Google Play gestiti | ✓ | ✓ | ✓ |
Account Google | 5.11 | ✓ | ✓ | ||
Installazione manuale con DPC (controller criteri dispositivi) | ✓ | ✓ | ✓ |
Considerazioni generali sull'implementazione
Ecco alcuni aspetti da considerare scrivere il DPC, indipendentemente dalla modalità operativa da te implementata.
Compatibilità con Google Play Services
La Guida all'APK di Google Play Services indica agli sviluppatori di eseguire un controllo della versione di Google Play Services prima e l'esecuzione di transazioni API. Perché il tentativo di aggiornamento di Google Play Services causa gravi interruzioni nella procedura di configurazione del dispositivo, il DPC non deve tentano di aggiornare Google Play Services prima del completamento del provisioning dispositivo.
I punti chiave relativi alla compatibilità del DPC con Google Play Services sono:
- Il DPC deve essere eseguito utilizzando Google Play Services in dotazione con dispositivo specifico.
- Il DPC non deve fare affidamento sulle nuove funzionalità presenti nelle versioni future di Google Play disponibili al momento del provisioning dispositivo.
Una volta completato il provisioning del dispositivo, il DPC può chiedere all'utente di eseguire l'aggiornamento Google Play Services in modo che il DPC possa utilizzare le funzionalità più recenti. Tuttavia, se non è disponibile per qualche motivo, il DPC deve ricorrere automaticamente la versione fornita con il dispositivo.
Recupera i dettagli del dispositivo
A causa di ritardi nella propagazione, potrebbero essere necessari fino a 2 minuti prima di una chiamata a device.get per un dispositivo appena registrato restituirà i dettagli del dispositivo.
Se il tuo flusso di lavoro richiede i dettagli prima che l'utente finale possa utilizzare il dispositivo o profilo di lavoro, ti consigliamo di usare una schermata di avanzamento nel DPC e di attendere la chiamata ha esito positivo.
Considerazioni sull'implementazione per la modalità proprietario del profilo
Ecco alcuni aspetti da considerare scrivi il tuo DPC per implementare il proprietario del profilo modalità operativa.
Rimuovere o disattivare il DPC personale
Durante il provisioning della modalità operativa del proprietario del profilo, viene avviata l'esecuzione del DPC (controller criteri dispositivi). nel profilo personale e avvia la procedura per creare un profilo di lavoro. Una volta creato il profilo di lavoro, il DPC è in esecuzione anche all'interno del lavoro profilo. Il DPC nel profilo di lavoro completa il processo di provisioning. Alle ore A questo punto, il DPC nel profilo personale deve disattivare se stesso o il dispositivo l'utente deve rimuoverla.
L'utente rimuove il DPC personale
- Il DPC personale rimane in ascolto
ACTION_MANAGED_PROFILE_PROVISIONED
Per i dispositivi Android 5.1, il DPC personale deve invece ascoltareACTION_MANAGED_PROFILE_ADDED
). - Il DPC personale avvia una richiesta di disinstallazione
ACTION_UNINSTALL_PACKAGE
In questo modo viene chiesto all'utente di disinstallare il DPC personale. Per l'utente migliore la procedura di disinstallazione dovrebbe avvenire durante il flusso di provisioning.
Il DPC personale si disattiva automaticamente
- Il DPC personale rimane in ascolto
ACTION_MANAGED_PROFILE_PROVISIONED
Per i dispositivi Android 5.1, il DPC personale deve invece ascoltareACTION_MANAGED_PROFILE_ADDED
). - Se applicabile, il DPC personale deve rilasciare i privilegi amministrativi del dispositivo prima di disattivarsi.
- Il DPC personale avvia una
setApplicationEnabledSetting
disattiva la richiestaCOMPONENT_ENABLED_STATE_DISABLED
. - L'utente può riattivare il DPC personale da Google Play.
Considerazioni sull'implementazione per la modalità Proprietario del dispositivo
Ecco alcuni aspetti da considerare quando scrivi il DPC per implementare la modalità operativa del proprietario del dispositivo.
Il dispositivo deve essere nuovo o di cui hai ripristinato i dati di fabbrica
Devi eseguire il provisioning della modalità operativa del proprietario del dispositivo durante la configurazione iniziale di un nuovo dispositivo o dopo un ripristino dei dati di fabbrica. La modalità Proprietario del dispositivo non può essere di cui è stato eseguito il provisioning su un dispositivo in qualsiasi altro momento.
La modalità Proprietario del dispositivo conferisce al DPC il controllo completo su un dispositivo. Se il provisioning modalità proprietario del dispositivo dopo la configurazione iniziale:
- Il malware potrebbe potenzialmente creare un proprietario del dispositivo e assumere il controllo del dispositivo.
- Potrebbero verificarsi problemi di privacy se alcuni dati utente o app erano già attivi del dispositivo.
Configura la modalità proprietario del dispositivo solo sui dispositivi di proprietà dell'azienda
Devi eseguire il provisioning della modalità proprietario del dispositivo solo sui dispositivi che identifichi come dell'azienda del tuo cliente. Puoi verificarlo rilevando un identificatore univoco del dispositivo (ad esempio, il numero di serie) o mediante l'utilizzo di un insieme di account autorizzati alla registrazione dei dispositivi tramite EMM .
Se non riesci a verificare la proprietà aziendale di un dispositivo, devi creare una protezione in modo che il provisioning della modalità proprietario del dispositivo non venga eseguito per errore. Ad esempio: puoi chiedere all'utente del dispositivo di confermare o eseguire un'azione prima di eseguire il provisioning della modalità di proprietario del dispositivo.
Abilita le app di sistema
Quando il DPC esegue il provisioning di un profilo di lavoro, tutte le app di sistema senza icone in Avvio applicazioni vengono considerati critici per il dispositivo e la loro esecuzione viene autorizzata automaticamente nel profilo di lavoro. Le app di sistema con icone in Avvio applicazioni sono considerate facoltativi e puoi decidere se abilitarli.
Abilitare le app di sistema tramite Google Play
Attivazione delle app di sistema tramite Google Play è facile e gli utenti ricevono gli aggiornamenti delle app non appena sono disponibili.
Abilita le app di sistema che utilizzano le API del framework Android
Se vuoi che gli utenti vedano le app di sistema non appena iniziano a usare i dispositivi:
attivare le app di sistema come parte del processo di provisioning del dispositivo. Il DPC consente
le app di sistema per nome del pacchetto o per intento, utilizzando
DevicePolicyManager.enableSystemApp()
Esistono alcuni modi per identificare le app di sistema che vuoi attivare e presentare nella tua console EMM agli amministratori IT.
Creare cataloghi di app di sistema
Con questo metodo, ogni dispositivo determina quali app sono presenti sul dispositivo e invia i dati alla console EMM. La console EMM visualizza dinamicamente durante la creazione dei criteri relativi ai dispositivi, il che consente all'amministratore IT di gestire di singole app.
Se non è stato ancora eseguito il provisioning del profilo di lavoro sul dispositivo, recupera un elenco di tutte le app con icone in Avvio applicazioni su un dispositivo che utilizzano
queryIntentActivities()
:private List<ResolveInfo> getAppsWithLauncher() { Intent i = new Intent(Intent.ACTION_MAIN); i.addCategory(Intent.CATEGORY_LAUNCHER); return getPackageManager().queryIntentActivities(i, 0); }
Se è già stato eseguito il provisioning del profilo di lavoro sul dispositivo, recupera un elenco di tutte le app nel profilo di lavoro che usano
PackageManager.GET_DISABLED_COMPONENTS
ePackageManager.GET_UNINSTALLED_PACKAGES
.Trova le app di sistema nell'elenco delle app selezionando
FLAG_SYSTEM
, che indica se un'app è installata nell'immagine di sistema del dispositivo.
Pro:
- Offre agli amministratori IT un quadro completo delle app su tutti i dispositivi.
- Fornisce un controllo granulare sulle app da attivare.
Contro:
- Poiché ogni dispositivo ha un catalogo di app diverso, è difficile applicare un modello della configurazione di un singolo criterio su più tipi di dispositivi.
- Può essere difficile presentare il volume di app specifiche degli OEM in un un modo significativo per gli amministratori IT.
Classificare le app di sistema per funzionalità
Se un amministratore IT vuole abilitare un'app di sistema per un gruppo di dispositivi, selezionano un'app generica in base alla funzionalità; come ad esempio "Sistema Browser". Il DPC autorizza quindi tutte le app di sistema per quell'intento.
Pro:
- Abilitazione semplice e basata sulle funzionalità per gli amministratori IT.
- Garantisce funzionalità coerenti tra una varietà di dispositivi (almeno per casi d'uso comuni).
Contro:
- Limita le app di sistema a quelle supportate su tutti i tipi di dispositivi.
- Gli amministratori IT potrebbero voler eseguire il push di una versione OEM di un'app (ad esempio browser Samsung®), ma non un altro (ad esempio un browser LG®).
- Gli amministratori IT potrebbero non voler eseguire il push di più app, ma non possono impedire quando sono presenti più gestori di intent.
Supportare solo le app di sistema approvate
Collabori con l'OEM per identificare i pacchetti OEM specifici e supportare solo quelli i pacchetti all'interno della console EMM. In questo modo puoi anche catalogare per l'app OEM, che altrimenti non sapresti perché L'app OEM non è ospitata su Google Play.
Pro:
- Semplifica enormemente il flusso di lavoro di integrazione ed elimina i casi limite. problematici nelle prime due opzioni.
- Puoi catalogare le configurazioni gestite per l'app OEM e presentarle nella console EMM per gli amministratori IT.
- Consente relazioni strette con gli OEM per il supporto dei dispositivi di punta.
Contro:
- Sono meno scalabili e riducono di conseguenza la scelta dei consumatori.
Scenari di test per il tuo DPC (controller criteri dispositivi)
Il DPC di test è un modello open source fornita da Google per testare le funzionalità aziendali nell'app DPC (controller criteri dispositivi). Il DPC di test è disponibile da github o Google Play. Puoi utilizzare il DPC di test per:
- Simulare funzionalità in Android
- Imposta e applica i criteri
- Impostare limitazioni relative ad app e intent
- Configurare i profili di lavoro
- Configura i dispositivi Android completamente gestiti
Sebbene il DPC di test sia principalmente un veicolo per testare l'azienda per Android, puoi usarla anche come sorgente di codice di esempio per Android le funzionalità di machine learning.
Personalizza il provisioning
Durante il provisioning dei dispositivi, l'interfaccia utente di sistema mostra un colore predefinito in la barra di stato e un logo predefinito nella parte superiore dello schermo. Imposta colori personalizzati e loghi per fornire una transizione visiva coerente tra il DPC e il all'interfaccia di sistema o consentire agli amministratori di farlo utilizzando la console EMM. Ad esempio: un amministratore può caricare un logo aziendale o personalizzare l'aspetto delle schermate notifiche.
Il DPC applica le scelte relative al colore e al logo utilizzando il
DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR
e
DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI
extra.
Per impostare un colore personalizzato, utilizza
EXTRA_PROVISIONING_MAIN_COLOR
:
per impostare un numero intero che indichi il colore predominante da mostrare durante il dispositivo
per eseguire il provisioning. Inserisci la parte in più (costante) in un intent con
ACTION_PROVISION_MANAGED_PROFILE
o
ACTION_PROVISION_MANAGED_DEVICE
.
Per vedere come sono rappresentati i numeri interi, vedi
Colore.
Per un esempio, vedi
MAIN_COLOR
nell'app TestDPC.
Per impostare un logo personalizzato, utilizza
EXTRA_PROVISIONING_LOGO_URI
:
per impostare un'immagine da visualizzare nella parte superiore dello schermo durante
per eseguire il provisioning. Inserisci la parte in più (costante) in un intent con
ACTION_PROVISION_MANAGED_PROFILE
o
ACTION_PROVISION_MANAGED_DEVICE
.
Assicurati che l'immagine abbia una densità di pixel ragionevole per il dispositivo.
Per un esempio, vedi
LOGO_URI
nell'app TestDPC.
Metodo codice QR
Il metodo di provisioning del codice QR imposta e configura la modalità Proprietario del dispositivo scansione di un codice QR dalla configurazione guidata. Il codice QR contiene un payload di coppie chiave-valore con tutte le informazioni necessarie al DPC per eseguire il provisioning un dispositivo.
La tua console EMM dovrebbe fornire agli amministratori IT un modo per creare codici QR per i dispositivi di cui si vuole eseguire il provisioning. L'amministratore IT invia i codici QR agli utenti finali, che questi ultimi eseguono il provisioning dei propri dispositivi analizzando Codici QR.
Casi d'uso per il provisioning del codice QR
Alcuni dispositivi, come i tablet, non supportano la tecnologia NFC. Il provisioning dei codici QR un modo pratico per eseguire il provisioning di un parco dispositivi distribuito che non supporta NFC. Un amministratore IT può inviare codici QR ai propri utenti per consentire l'accesso per eseguire il provisioning.
Il provisioning del codice QR non richiede un'identità Google, ad esempio un dominio Google o un Account Google. Organizzazioni che usano Android, ma non Google Workspace, non hanno un'identità Google.
Come NFC, il provisioning dei codici QR consente implementazioni kiosk e monouso in cui L'identità Google (o qualsiasi identità) non è necessaria né desiderabile. Ad esempio, un Il dispositivo kiosk di un negozio non appartiene a nessuno e non deve avere un utente finale e identità di base.
Crea un codice QR
Un codice QR valido per il provisioning del codice QR è un oggetto JavaScript® codificato in UTF-8 Stringa di notazione (JSON). Puoi includere queste proprietà in un codice QR valido:
Sempre obbligatoria
Obbligatorio se sul dispositivo non è già installato un DPC (controller criteri dispositivi)
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM
Consigliato se il dispositivo non è già connesso alla rete Wi-Fi
Facoltativo
EXTRA_PROVISIONING_LOCALE
EXTRA_PROVISIONING_TIME_ZONE
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER
EXTRA_PROVISIONING_LOCAL_TIME
EXTRA_PROVISIONING_WIFI_HIDDEN
EXTRA_PROVISIONING_WIFI_SECURITY_TYPE
EXTRA_PROVISIONING_WIFI_PROXY_HOST
EXTRA_PROVISIONING_WIFI_PROXY_PORT
EXTRA_PROVISIONING_WIFI_PROXY_BYPASS
EXTRA_PROVISIONING_WIFI_PAC_URL
EXTRA_PROVISIONING_SKIP_ENCRYPTION
Questo esempio crea un codice QR valido:
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":
"com.emm.android/com.emm.android.DeviceAdminReceiver",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":
"gJD2YwtOiWJHkSMkkIfLRlj-quNqG1fb6v100QmzM9w=",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION":
"https://path.to/dpc.apk",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION": false,
"android.app.extra.PROVISIONING_WIFI_SSID": "GuestNetwork",
"android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE": {
"dpc_company_name": "Acme Inc.",
"emm_server_url": "https://server.emm.biz:8787",
"another_custom_dpc_key": "dpc_custom_value"
}
}
Procedura di provisioning del codice QR
- La configurazione guidata chiede all'utente di toccare la schermata di benvenuto 6 volte. La i tocchi devono essere effettuati nella stessa posizione dello schermo.
- La configurazione guidata chiede all'utente di connettersi a internet per che la procedura guidata può scaricare un lettore di codici QR.
- Google Play Services scarica un modulo che contiene un riconoscimento del codice QR e un motore analitico veloce basato su SQL.
- L'utente scansiona il codice QR fornito dall'amministratore IT.
- La configurazione guidata scarica l'app DPC e avvia il proprietario del dispositivo
il processo di provisioning
ACTION_PROVISION_MANAGED_DEVICE
Metodo degli account della versione gestita di Google Play
Un DPC può utilizzare il metodo di provisioning degli account della versione gestita di Google Play per configurare modalità proprietario del dispositivo o proprietario del profilo. Questo metodo di provisioning è scelto come target delle organizzazioni che non usano Google Workspace.
Il metodo di provisioning degli account Google Play gestiti utilizza Libreria di supporto DPC. Questa libreria client garantisce il corretto funzionamento della versione gestita di Google Play Account. Mantiene inoltre la compatibilità con gli aggiornamenti futuri Procedura di provisioning degli account Google Play.
Prerequisiti per il provisioning dei dispositivi
- L'ID azienda viene creato e registrato con un'identità EMM e l'ESA. come descritto in Crea e registra un'azienda.
- L'identità aziendale dell'utente è nota alla tua console EMM.
- L'utente può accedere all'app DPC utilizzando le credenziali accettate dal tuo provider EMM della console, in genere le credenziali email aziendali.
Configura la modalità proprietario del profilo
Puoi eseguire il provisioning della modalità operativa del proprietario del profilo su un dispositivo che viene utilizzata in uno scenario BYOD come dispositivo personale.
- L'utente scarica manualmente il tuo DPC da Google Play e lo avvia.
- Il DPC esegue il provisioning del profilo di lavoro utilizzando
ACTION_PROVISION_MANAGED_PROFILE
- Completa gli ultimi passaggi di configurazione.
Configura la modalità proprietario del dispositivo
Devi eseguire il provisioning della modalità operativa del proprietario del dispositivo durante la configurazione iniziale di un nuovo dispositivo o dopo un ripristino dei dati di fabbrica. Non è possibile eseguire il provisioning della modalità Proprietario del dispositivo in un dispositivo in qualsiasi altro momento.
Durante la configurazione del dispositivo, l'utente inserisce un token speciale DPC specifico per il
viene richiesto di aggiungere un account. Un token è nel formato afw#DPC_IDENTIFIER
. Per
un EMM denominato ACME, afw#acme
installerà il DPC predefinito di ACME EMM.
Ogni EMM deve richiedere a Google un identificatore DPC specifico prima di poter utilizzare
durante il processo di provisioning.
- L'utente accende un dispositivo nuovo o di cui è stato ripristinato i dati di fabbrica e la configurazione guidata viene avviato.
- Quando viene richiesto di aggiungere un account, l'utente inserisce un token speciale nel
formato
afw#DPC_IDENTIFIER
che identifica il DPC per il tuo provider EMM. - Utilizzando l'identificatore DPC nel token, la configurazione guidata aggiunge un Account Google al dispositivo. Questo account temporaneo viene utilizzato solo per scaricare il DPC (controller criteri dispositivi) dell'EMM da Google Play e viene rimosso i passaggi di configurazione finali.
- Il DPC esegue il provisioning del dispositivo utilizzando
ACTION_PROVISION_MANAGED_DEVICE
- Completa gli ultimi passaggi di configurazione.
Passaggi finali di configurazione per tutte le modalità operative
Esegui questi passaggi soltanto dopo i passaggi iniziali per la configurazione la modalità proprietario del profilo o la modalità proprietario del dispositivo sono state completate.
Il DPC assicura che il dispositivo possa supportare gli account della versione gestita di Google Play inizializzando la libreria di supporto DPC:
AndroidForWorkAccountSupport androidForWorkAccountSupport = new AndroidForWorkAccountSupport(context, admin); androidForWorkAccountSupport.ensureWorkingEnvironment(callback);
Se stai configurando la modalità proprietario del dispositivo su un dispositivo, questo passaggio rimuove il l'Account Google temporaneo aggiunto per scaricare il DPC.
L'utente accede al DPC utilizzando le proprie credenziali EMM. Si tratta di di solito le credenziali email aziendali.
Il DPC richiede le credenziali dell'account Google Play gestito per utente aziendale autenticato dalla console EMM.
Se la console EMM non dispone di un
userId
di Google Play per l'utente, crea un nuovo utente chiamandoUsers.insert()
Se esegui il provisioning della modalità Proprietario del dispositivo, specifica un account del dispositivo (ad deployment di dispositivi dedicati) o un account utente (per le implementazioni di proprietà dell'azienda).Imposta i criteri del dispositivo chiamando
Devices.update
Devi configurare le norme prima di aggiungere l'account della versione gestita di Google Play a dispositivo, altrimenti il criterio non verrà applicato per un breve periodo dopo aver aggiunto l'account al dispositivo.La console EMM richiede le credenziali dell'account per
userId
entro il giorno chiamataUsers.generateAuthenticationToken()
Questo token di autenticazione è di breve durata e non può essere riutilizzato. Il DPC deve utilizzare il token per aggiungere l'account in modo programmatico (non serve a niente dell'utente).L'API EMM di Google Play restituisce il token di autenticazione alla console EMM.
La console EMM inoltra il token di autenticazione al DPC (controller criteri dispositivi).
Il DPC aggiunge l'account della versione gestita di Google Play al dispositivo utilizzando
androidForWorkAccountSupport.addAndroidForWorkAccount(token, accountAddedCallback);
Metodo Account Google
Un DPC può utilizzare il metodo di provisioning dell'Account Google per configurare il proprietario del dispositivo o alla modalità proprietario del profilo. Con il metodo di provisioning dell'Account Google, Il DPC guida l'utente attraverso la procedura di provisioning dopo che l'utente ha aggiunto la propria Account Google durante la configurazione iniziale del dispositivo.
Quando un utente inserisce le credenziali del proprio Account Google:
- Il server di autenticazione di Google autentica l'account utente.
- Il server di autenticazione comunica quindi con il server aziendale per se il dominio dell'account è registrato come dominio Google Workspace o come Dominio gestito da EMM.
- In tal caso, il sistema scarica automaticamente il DPC associato al dominio da Google Play e installarlo.
Configura la modalità proprietario del profilo
Puoi eseguire il provisioning della modalità operativa del proprietario del profilo durante la configurazione iniziale di un dispositivo o quando l'utente aggiunge un account tramite Impostazioni > Aggiungi account.
- L'autenticazione dell'account viene avviata da un utente dalla configurazione guidata o da Impostazioni > Aggiungi account.
- GMSCore avvia il provisioning del profilo di lavoro utilizzando
ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE
. - Il DPC viene scaricato automaticamente sul dispositivo e avviato utilizzando
ACTION_GET_PROVISIONING_MODE
per verificare che il provisioning del profilo di lavoro sia supportato dal DPC (controller criteri dispositivi).EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
: informazioni aggiuntive per il profilo di lavoro, ad esempio l'indirizzo email. Il DPC riceverà anche is_setup_wizard qui come parte di questo bundle. Questo bundle sarà incluso nei gestoriACTION_GET_PROVISIONING_MODE
eACTION_ADMIN_POLICY_COMPLIANCE
.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
: nome dell'account autenticato di cui eseguire la migrazione nel nuovo profilo di lavoro.
- La piattaforma esegue il provisioning del profilo di lavoro.
- Quando viene eseguito il provisioning del profilo di lavoro, il DPC riceve la trasmissione
ACTION_PROFILE_PROVISIONING_COMPLETE
La proprietàACTION_ADMIN_POLICY_COMPLIANCE
del DPC (controller criteri dispositivi) viene avviato nel profilo di lavoro. Una volta creato il profilo di lavoro, il DPC sia eseguito anche all'interno del profilo di lavoro. Il DPC applica i criteri per questo Account Google gestito, garantisce che il dispositivo non si trovi in una zona stato e verifica che i criteri siano applicati (ad esempio richiedendo una della password). - Il DPC nel profilo personale si disattiva o l'utente lo rimuove.
![](https://developers.google.cn/static/android/work/images/post-suw.png?authuser=9&hl=it)
Configura la modalità proprietario del dispositivo o COPE
Devi eseguire il provisioning della modalità operativa del proprietario del dispositivo durante la configurazione iniziale di un nuovo dispositivo o dopo un ripristino dei dati di fabbrica. La modalità Proprietario del dispositivo non può essere aggiunta a un dispositivo in qualsiasi altro momento.
- L'autenticazione dell'account viene avviata da un utente tramite la configurazione guidata.
- GMSCore avvia il provisioning dei proprietari dei dispositivi utilizzando
ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE
. 3.Il DPC viene scaricato automaticamente sul dispositivo e avviato utilizzando il gestoreGET_PROVISIONING_MODE
per selezionare la modalità di provisioning desiderata.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
: informazioni aggiuntive sul profilo di lavoro, ad esempio impostazioni internazionali, Wi-Fi e indirizzo email. Il DPC riceverà anche is_setup_wizard qui come parte di questo bundle. Questo bundle sarà incluso inACTION_GET_PROVISIONING_MODE
eACTION_ADMIN_POLICY_COMPLIANCE
.
- La piattaforma esegue il provisioning del dispositivo nella modalità di provisioning desiderata.
- Una volta eseguito il provisioning del dispositivo, il DPC riceve i seguenti broadcast e viene avviato il gestore
ACTION_ADMIN_POLICY_COMPLIANCE
del DPC: - Il DPC utilizza il valore
Global.DEVICE_PROVISIONED
per verificare che il dispositivo sia nuovo o abbia ripristinato i dati di fabbrica (provisioning non eseguito):- 0 - Provisioning non eseguito.
- 1 - Provisioning effettuato.
- Il DPC completa il processo di provisioning eseguendo il push dei criteri per questo dispositivo gestito, garantendo che non si trovi in uno stato compromesso. per verificare che i criteri siano applicati (ad esempio, richiedere una password).
![](https://developers.google.cn/static/android/work/images/in-suw.png?authuser=9&hl=it)
Considerazioni sull'implementazione per il metodo Account Google
Il DPC deve rilevare il flusso di autenticazione dell'Account Google cercando gli extra specifici nell'intento di lancio utilizzati (vedi
LaunchIntentUtil
):- Account di tipo
android.accounts.Account
: indica che è stato aggiunto dalla configurazione guidata o da Impostazioni > Aggiungi account, che richiede il DPC lanciato per gestire il dispositivo o il profilo. is_setup_wizard
di tipo Booleano : se true, il DPC è stato avviato in la configurazione guidata prima del completamento della configurazione guidata, altrimenti Impostazioni > Aggiungi account o un altro flusso.
Un controllo per verificare se il DPC è stato lanciato come parte del metodo Account Google è:
boolean isSynchronousAuthLaunch(Intent launchIntent) { return launchIntent.hasExtra("is_setup_wizard"); }
- Account di tipo
Il DPC non deve chiamare
finish()
prima del termine della configurazione. Dovrebbe anche restituire un codice risultato positivo (ad esempioRESULT_OK
) come il DPC lanciato constartActivityForResult()
e attende un risultato.Il DPC deve attendere di ricevere un codice risultato dal processo di provisioning prima chiamata a
finish()
se il flusso di configurazione DPC raggiunge il punto di invio di un IntenzioneACTION_PROVISION_*
. Utilizza lastartActivityForResult()
eonActivityResult()
all'avvio diACTION_PROVISION_*
intent. (VediLaunchActivity
eSetupSyncAuthManagement
per gli esempi).A causa della natura potenzialmente asincrona del processo di configurazione, il DPC (controller criteri dispositivi) non può fare affidamento su un codice risultato
RESULT_OK
per indicare che il provisioning riuscito. L'unico modo garantito è fare affidamentoDeviceAdminReceiver
sulla riuscita del provisioning.RESULT_CANCELED
indica che l'utente sottoposti a backup in una parte sincrona del flusso di configurazione e il DPC deve reagire a questo punto.In questo esempio, il DPC avvia il provisioning e attende il codice risultato di un'attività:
Intent intent = new Intent(ACTION_PROVISION_MANAGED_PROFILE); startActivityForResult(intent, REQUEST_MANAGED_PROFILE); ... @Override public void onActivityResult(int req, int res, Intent i) { if (req == REQUEST_MANAGED_PROFILE) { if (res == Activity.RESULT_OK) { setResult(Activity.RESULT_OK); finish(); } else { Toast.makeText(this, “Provisioning failed”, Toast.LENGTH_SHORT).show(); } } }
Il DPC non deve tentare di configurare la modalità operativa del proprietario del dispositivo se è già stato eseguito il provisioning del dispositivo (vedi
ProvisioningStateUtil.isDeviceProvisioned()
). In questo esempio, il DPC controlla se viene eseguito il provisioning del dispositivo:public static boolean isDeviceProvisioned(Context context) { ContentResolver cr = context.getContentResolver(); return Settings.Global.getInt(cr, DEVICE_PROVISIONED, 0) != 0; }
(Facoltativo) Il DPC può utilizzare
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
extra quando si avvia il provisioning per ritrasmettere le informazioni sullo statoDeviceAdminReceiver
(che nel caso del proprietario del profilo è in esecuzione all'interno del profilo di lavoro). TestDPC utilizza questo extra inserire un altro insieme di attività nel flusso dell'Account Google dopo viene completato il provisioning. Per maggiori dettagli, vediDeviceAdminReceiver
public class DeviceAdminReceiver extends android.app.admin.DeviceAdminReceiver { @Override public void onProfileProvisioningComplete(Context context, Intent intent) { // Retrieve the admin extras bundle, which we can use to determine the original context for // Test DPC's launch. PersistableBundle extras = intent.getParcelableExtra( EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE); ...
Per configurare un profilo di lavoro, il DPC deve eseguire la migrazione dell'account aggiunto al nuovo profilo di lavoro. A tal fine, il DPC deve trasmettere l'account fornito nel intenzione di lancio per
ACTION_PROVISION_MANAGED_PROFILE
Il DPC deve fornire all'utente un chiaro invito all'azione (ad esempio Fine) per uscire dall'app al termine della configurazione in modo che l'utente non pensi non c'è una via d'uscita.
Il DPC deve utilizzare il tema o la libreria di layout della configurazione guidata, in modo che l'utente sia fluida e ben integrata.
Metodo NFC
Un DPC può utilizzare il metodo di provisioning NFC per configurare la modalità proprietario del dispositivo. Nella metodo di provisioning NFC, o tag NFC, crei un'app programmatore NFC che contiene i criteri iniziali e la configurazione, le impostazioni e dettagli di provisioning richiesti dal tuo cliente per configurare il proprietario del dispositivo modalità operativa. Quando tu o il tuo cliente installano l'app di programmazione NFC un dispositivo Android, tale dispositivo diventa il dispositivo di programmazione.
Per eseguire il provisioning di un dispositivo, l'amministratore IT prende un nuovo dispositivo dalla confezione e lo colpisce contro il dispositivo di programmazione o il Tag NFC. Il dosso si trasferisce configurazioni al dispositivo in modo che si connetta a internet e scarichi i criteri e le impostazioni appropriati. Il dispositivo viene quindi gestito dal tuo DPC (controller criteri dispositivi).
Dopo il provisioning di un dispositivo, per un breve periodo di tempo Google Play mostra lo stato non gestito contenuti per consumatori invece che app e raccolte approvate che dovrebbero display. che può durare da pochi minuti a un'ora.
Crea l'app di programmazione e il dispositivo di programmazione NFC
Sui dispositivi con Android 10 o versioni precedenti, è possibile usare Android Beam per completare un provisioning NFC:
- Scarica l'app di esempio del programmatore NFC. Puoi utilizzare il campione così com'è senza aggiunte oppure puoi modificarlo per i valori predefiniti.
- Installa l'app di programmazione sul dispositivo scelto.
- Avvia l'app di programmazione NFC e seleziona Carica impostazioni predefinite.
per
com.example.android.apis
. Questo testo può variare a seconda dell'impostazione predefinita parametri che hai impostato.)
Eseguire il provisioning di un dispositivo del cliente
- Avvicina il dispositivo del programmatore o il Tag NFC a un dispositivo nuovo o a uno che è stato ripristinare i dati di fabbrica.
- Verifica che il dispositivo resti nella schermata di benvenuto iniziale, visualizzata
visualizzato all'avvio. Il testo è specificato in
Ready to send:{...}
nell'app del programmatore. - Attendi mentre il DPC:
- Cripta il dispositivo.
- Se si tratta di un dispositivo CDMA (Code-Division Multi Access): attiva il uno smartphone mentre è visualizzata un'interfaccia utente di telefonia (non è richiesta alcuna interazione).
- Configura la connessione Wi-Fi.
- Scarica il file APK per com.example.android.apis.
- Installa com.example.android.apis.
- Imposta l'amministratore del dispositivo di esempio in com.example.android.apis come proprietario del dispositivo.
- Mostra un "toast" riuscito quando viene attivato il proprietario del dispositivo.
- Una volta tornata alla home page (la configurazione guidata viene saltata automaticamente),
verifica che com.example.android.apis sia impostato come proprietario del dispositivo:
- In Impostazioni > Sicurezza > Amministratori dispositivo, assicurati che lo stato del dispositivo Impossibile rimuovere l'amministratore.
- In Impostazioni > Utenti > Utenti e profili > Tu (proprietario), assicurati che: Il proprietario è l'unico account disponibile (un dispositivo può avere un solo account attivo proprietario del dispositivo alla volta).
Risorse aggiuntive
NFC avanzata descrive argomenti quali l'utilizzo di varie tecnologie di tag, la scrittura nell'NFC tag e invii in primo piano.
Metodo di installazione manuale del DPC
Per impostare la modalità proprietario del profilo utilizzando il metodo di provisioning manuale dell'installazione DPC (controller criteri dispositivi), l'utente scarica il tuo DPC da Google Play e lo installa. Il DPC (controller criteri dispositivi) guida l'utente nel resto della procedura per impostare il proprietario del profilo l'Account Google gestito.
Il DPC può aggiungere l'Account Google gestito prima o dopo la creazione il profilo di lavoro. Ad esempio, il DPC può creare un profilo di lavoro basato su le credenziali EMM dell'utente invece di richiedere l'Account Google gestito per prima cosa.
Configura la modalità proprietario del profilo
Devi prima aggiungere l'Account Google gestito
- L'utente scarica il tuo DPC da Google Play e lo installa.
- Il DPC aggiunge l'Account Google gestito prima di creare il profilo di lavoro
utilizzando
AccountManager.addAccount()
. - Il DPC inizia a essere eseguito nel profilo personale e avvia il processo per
crea un profilo di lavoro utilizzando:
ACTION_PROVISION_MANAGED_PROFILE
: esegue il provisioning del profilo di lavoro.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— Informazioni aggiuntive per il profilo di lavoro, ad esempio impostazioni internazionali, Wi-Fi, email. .EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
— Nome dell'account autenticato di cui eseguire la migrazione nel nuovo lavoro. profilo.
- Il DPC nel profilo di lavoro completa il processo di provisioning. Una volta che il lavoro esistente, il DPC è in esecuzione anche all'interno del profilo di lavoro. Il DPC (controller criteri dispositivi) Il profilo di lavoro completa il processo di provisioning eseguendo il push dei criteri per l'Account Google gestito, assicurandosi che il dispositivo non si trovi in una zona stato e per verificare che i criteri siano applicati (ad esempio richiedendo una della password).
- Quando viene eseguito il provisioning del profilo di lavoro, il DPC riceve la trasmissione
ACTION_PROFILE_PROVISIONING_COMPLETE
- Il DPC nel profilo personale si disattiva o quando l'utente lo rimuove.
![](https://developers.google.cn/static/android/work/images/google_acct_first.png?authuser=9&hl=it)
Devi prima creare il profilo di lavoro
- L'utente scarica il tuo DPC da Google Play e lo installa.
- Il DPC inizia a essere eseguito nel profilo personale e avvia il processo per
crea un profilo di lavoro utilizzando:
ACTION_PROVISION_MANAGED_PROFILE
: esegue il provisioning del profilo di lavoro.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— Informazioni aggiuntive per il profilo di lavoro, ad esempio impostazioni internazionali, Wi-Fi, email. .
- Il DPC aggiunge l'Account Google gestito utilizzando
AccountManager.addAccount()
- Il DPC riceve la trasmissione
ACTION_PROFILE_PROVISIONING_COMPLETE
e leggeEXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
. - Il DPC nel profilo di lavoro completa il processo di provisioning. Una volta creato il profilo di lavoro, il DPC è in esecuzione anche all'interno del lavoro profilo. Il DPC nel profilo di lavoro completa il processo di provisioning push dei criteri per quell'Account Google gestito, assicurando che il dispositivo non è in stato compromesso e verifica che i criteri vengano applicati (come la richiesta di una password).
- Il DPC abilita il profilo di lavoro utilizzando
DevicePolicyManager.setProfileEnabled()
- Il DPC nel profilo personale si disattiva o quando l'utente lo rimuove.
![](https://developers.google.cn/static/android/work/images/work_profile_first.png?authuser=9&hl=it)
-
Il metodo Account Google in Android 5.1 supporta solo la modalità operativa del proprietario del profilo e l'utente può configurarlo solo da Impostazioni > Aggiungi account. ↩