Oltre ai requisiti descritti in Creare app per auto parcheggiate e Aggiungere il supporto di Android Automotive OS all'app per auto parcheggiate, esistono alcuni requisiti aggiuntivi specifici per i browser, descritti in dettaglio in questa pagina.
Contrassegnare l'app come browser
Per indicare che la tua app è un browser, deve includere un filtro per intent come
il seguente all'interno di un elemento <activity>
esportato:
<activity ...
android:exported="true">
...
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="http"/>
</intent-filter>
</activity>
Consenti agli utenti di bloccare l'accesso ai dati sensibili
A differenza di molti dispositivi Android, i veicoli con Android Automotive OS sono spesso dispositivi condivisi. Per consentire agli utenti di proteggere i propri dati sensibili, come password e informazioni di pagamento, i browser creati per Android Automotive OS non devono salvare o consentire l'accesso a password o informazioni di pagamento, a meno che l'utente non possa bloccare l'accesso alle password utilizzando un blocco del profilo. L'autenticazione può essere eseguita utilizzando le credenziali del dispositivo o creando un sistema di autenticazione all'interno dell'app.
Inoltre, prima di sincronizzare i dati sensibili, i browser creati per Android Automotive OS devono chiedere all'utente di autenticarsi e fornire messaggi per informarlo che i suoi dati vengono sincronizzati con l'auto. Se l'utente non ha configurato alcun metodo di autenticazione, puoi chiedergli di configurarne uno quando tenta di sincronizzare dati sensibili, utilizzando le credenziali del dispositivo o una specifica per la tua app.
Utilizzare le credenziali del dispositivo per l'autenticazione
Questa sezione fornisce indicazioni su come utilizzare le API di autenticazione del sistema e delle credenziali del dispositivo per soddisfare i requisiti relativi ai dati sensibili descritti in precedenza.
Controlla se è impostata una credenziale del dispositivo
Per determinare se l'utente ha protetto il proprio dispositivo con un PIN, una sequenza o una password, puoi utilizzare il metodo KeyguardManager::isDeviceSecure
.
Kotlin
val keyguardManager = context.getSystemService(KeyguardManager::class.java) val isDeviceSecure = keyguardManager.isDeviceSecure()
Java
KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE); boolean isDeviceSecure = keyguardManager.isDeviceSecure();
Apri le impostazioni della schermata di blocco
Per ridurre l'attrito per gli utenti nel caso in cui debbano impostare una credenziale del dispositivo, puoi aprire la schermata Sicurezza nell'app Impostazioni utilizzando l'intent Settings.ACTION_SECURITY_SETTINGS
.
Kotlin
context.startActivity(Intent(Settings.ACTION_SECURITY_SETTINGS))
Java
context.startActivity(new Intent(Settings.ACTION_SECURITY_SETTINGS))
Chiedere all'utente di autenticarsi
Per chiedere all'utente di autenticarsi, puoi utilizzare l'API BiometricPrompt
come
descritto in Mostrare una finestra di dialogo di autenticazione biometrica.