Gestione dei dispositivi per il settore automobilistico

La gestione dei dispositivi ti consente di gestire da remoto un veicolo con sistema operativo Android Automotive (AAOS). Ad esempio, il proprietario di un veicolo potrebbe voler ripristinare da remoto le impostazioni di fabbrica dell'unità di infotainment.

In Automotive forniamo due categorie di gestione dei dispositivi:

  • Dispositivo personale. Un veicolo è di proprietà di un consumatore. Il proprietario del veicolo gestisce l'auto da remoto. Ad esempio, il proprietario utilizza l'app mobile del veicolo per eseguire da remoto un ripristino delle impostazioni di fabbrica dell'unità di infotainment.
  • Dispositivo aziendale. Un veicolo è di proprietà di un'impresa o di un'organizzazione. Un amministratore gestisce da remoto l'auto.

Dispositivi personali

In uno scenario con dispositivo personale, la gestione remota del veicolo richiede la considerazione dello stato di guida dell'auto. Ad esempio, se il proprietario del veicolo attiva da remoto un ripristino delle impostazioni di fabbrica, il veicolo non dovrebbe eseguire il ripristino delle impostazioni di fabbrica se l'auto è guidata attivamente da un'altra persona.

Pertanto, disponiamo di una serie di API di gestione dei dispositivi integrate con restrizioni sullo stato dell'unità. Queste API possono essere chiamate da qualsiasi app di sistema (app preinstallate nella partizione di sistema) con le autorizzazioni corrette.

API di gestione dei dispositivi personali

API Scopo
CarDevicePolicyManager.createUser()

Crea un nuovo utente sul dispositivo in background.

Come interagisce con lo stato di guida?

Un nuovo utente viene creato in background, indipendentemente dallo stato dell'unità.

CarDevicePolicyManager.RemoveUser()

Rimuove un utente esistente sul dispositivo.

Come interagisce con lo stato di guida?

Se l'utente di destinazione si trova in:

  • Contesto, l'operazione procede.
  • In primo piano e la vettura è PARCHEGGIATA o AL MINIMO , l'operazione procede.
  • In primo piano e l'auto è in MOVIMENTO , viene generato un codice di eccezione.
DevicePolicyManager.lockNow()

Blocca un utente esistente sul dispositivo. Se l'utente dispone di credenziali di blocco schermo esistenti (ad esempio, un PIN o una sequenza), il display rimane acceso.

Come interagisce con lo stato di guida?

Se l'utente di destinazione si trova in:

  • Contesto , l'operazione procede.
  • In primo piano e vettura PARCHEGGIATA oppure, IDLING , oppure, IN MOVIMENTO , procede se l'utente è in primo piano (indipendentemente dallo stato di guida), o ignorato altrimenti. lockNow() non è limitato dallo stato di distrazione UX.
DevicePolicyManager.resetPassword()

Blocca un utente esistente sul dispositivo impostando una credenziale della schermata di blocco, se l'utente non dispone di credenziali esistenti. Il display rimane acceso.

Come interagisce con lo stato di guida?

Se l'utente di destinazione si trova in:

  • Contesto , l'operazione procede.
  • In primo piano e la vettura è PARCHEGGIATA oppure, AL MINIMO , l'operazione procede.
  • In primo piano e l'auto è in MOVIMENTO , viene generato un codice di eccezione.
DevicePolicyManager.wipeData()

Attiva un ripristino delle impostazioni di fabbrica sul dispositivo.

Come interagisce con lo stato di guida?

Indipendentemente dallo stato dell'unità ( PARKED , IDLING o MOVING ), l'operazione procede. Il sistema pubblica una notifica per informare il conducente che è necessario un ripristino delle impostazioni di fabbrica.

Quando il veicolo è PARCHEGGIATO, il conducente può interagire con la notifica per scegliere di resettare il dispositivo adesso o più tardi (al successivo avvio dell'auto).

Per esempio:

Notifica di ripristino delle impostazioni di fabbrica

Figura 1. Il sistema pubblica una notifica quando viene attivato il ripristino delle impostazioni di fabbrica.

Il veicolo è PARCHEGGIATO

Figura 2. Quando il veicolo è PARCHEGGIATO, il conducente può interagire con la notifica per scegliere di ripristinare il dispositivo adesso o più tardi (al successivo avvio dell'auto).

Il conducente sceglie Ripristina

Figura 3. Se il conducente sceglie di ripristinare in seguito, un messaggio di avviso indica che il dispositivo verrà ripristinato alle impostazioni di fabbrica al successivo avvio dell'auto.

Dispositivi aziendali

I dispositivi con sistema operativo Android Automotive con Android 13 e versioni successive possono dichiarare il supporto per la funzionalità android.software.device_admin per abilitare le API di gestione dei dispositivi aziendali (per ulteriori informazioni, consulta DevicePolicyManager ). Un'organizzazione può quindi utilizzare un'app Device Policy Controller (DPC) per controllare i criteri del dispositivo locale e le app di sistema sul dispositivo.

Automotive non supporta i profili di lavoro , il che significa che l'unica soluzione di gestione supportata è un dispositivo completamente gestito , destinato ai dispositivi di proprietà dell'azienda sui quali l'organizzazione ha il controllo di gestione completo.

Le aziende che gestiscono il veicolo da remoto devono considerare anche lo stato di guida dell'auto. Pertanto, anche le azioni remote specifiche vengono integrate con lo stato di guida di un veicolo. Ad esempio, il flusso di ripristino delle impostazioni di fabbrica in DevicePolicyManager.setFactoryResetProtectionPolicy() si applica anche ai veicoli aziendali.

Qualsiasi API dal codice DevicePolicyManager > può generare un'eccezione (ad esempio, se il veicolo è in movimento). Di seguito viene fornito un elenco parziale del codice DevicePolicyManager > API. Per ulteriori informazioni, consulta Panoramica sull'amministrazione del dispositivo .

  • DevicePolicyManager.removeActiveAdmin()
  • DevicePolicyManager.setFactoryResetProtectionPolicy()
  • DevicePolicyManager.installCaCert()
  • DevicePolicyManager.uninstallCaCert()
  • DevicePolicyManager.installKeyPair()
  • DevicePolicyManager.removeKeyPair()

Gestione dei dispositivi aziendali per più utenti

La gestione dei dispositivi per il settore automobilistico funziona con il supporto multiutente . Ciò significa che più conducenti possono utilizzare lo stesso veicolo di proprietà dell'azienda, ma preservano e impediscono che la privacy dei loro dati venga esposta ad altri conducenti utilizzando i propri utenti.

L'amministratore può utilizzare un'app Device Policy Controller (DPC) come descritto in creare un controller dei criteri del dispositivo per controllare i criteri a livello di dispositivo o specifici dell'utente.

Le build automobilistiche utilizzano in genere la modalità utente del sistema headless, nel qual caso il Device Policy Controller (DPC) verrebbe impostato come proprietario del dispositivo (DO) dell'utente del sistema e proprietario del profilo (PO) di ogni altro utente. L'amministratore remoto dovrebbe affiliare gli utenti PO, poiché alcune API (come requestBugreport() ) sono disponibili solo se tutti gli utenti sono affiliati. Quindi l'amministratore remoto dovrebbe selezionare il DPC appropriato per eseguire le azioni. Se l'azione è associata al dispositivo (come il ripristino delle impostazioni di fabbrica tramite wipeData() ), dovrebbe utilizzare DO DPC. Se è associato a un utente (come addUserRestriction() ), dovrebbe utilizzare il PO DPC.

L'app DPC necessita di un IPC tra DO e PO. Consigliamo l'API Connect Apps descritta in App personali e di lavoro connesse .

Per ulteriori informazioni su come un'app DPC gestisce più utenti, consulta Utenti affiliati .