Oltre ai requisiti descritti in Creare app parcheggiate per le auto e Aggiungere il supporto di Android Automotive OS all'app parcheggiata, esistono alcuni requisiti aggiuntivi specifici per i browser che sono descritti 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.MAIN"/>
...
<category android:name="android.intent.category.APP_BROWSER"/>
</intent-filter>
</activity>
Per saperne di più, vedi
android.intent.category.APP_BROWSER.
Consentire 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 dati di pagamento, i browser creati per Android Automotive OS non devono salvare o consentire l'accesso a password o dati di pagamento, a meno che l' utente non possa bloccare l'accesso alle password utilizzando un profilo protetto. 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 un messaggio per informarlo che i suoi dati vengono sincronizzati con l'auto. Se l'utente non ha configurato alcun metodo di autenticazione, puoi chiedere gli di configurarne uno quando tenta di sincronizzare i 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 credenziali del dispositivo e le API di autenticazione del sistema per soddisfare i requisiti relativi ai dati sensibili descritti in precedenza.
Verificare se sono state impostate le credenziali del dispositivo
Per determinare se l'utente ha protetto il dispositivo con un PIN, una sequenza o una
password, puoi utilizzare il KeyguardManager::isDeviceSecure
metodo.
val keyguardManager = context.getSystemService<KeyguardManager>() val isDeviceSecure = keyguardManager?.isDeviceSecure == true
Aprire le impostazioni della schermata di blocco
Per ridurre l'attrito dell'utente nel caso in cui debba impostare le credenziali del dispositivo, puoi aprire la schermata Sicurezza nell'app Impostazioni utilizzando l'
Settings.ACTION_SECURITY_SETTINGS
azione intent.
context.startActivity( Intent(Settings.ACTION_SECURITY_SETTINGS) .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) )
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.
DEVICE_CREDENTIAL