Más allá de los requisitos que se describen en Cómo compilar apps para usar en el SO Android Automotive con el vehículo estacionado, hay algunos requisitos adicionales específicos de los navegadores que se detallan en esta página.
Cómo permitir que los usuarios bloqueen el acceso a datos sensibles
A diferencia de muchos dispositivos Android, los vehículos con SO Android Automotive suelen ser dispositivos compartidos. Para brindarles a los usuarios la posibilidad de proteger sus datos sensibles, como contraseñas e información de pago, los navegadores compilados para el SO Android Automotive no deben guardar ni permitir el acceso a las contraseñas ni a la información de pago, a menos que los usuarios puedan bloquear el acceso a las contraseñas con un bloqueo de perfil La autenticación se puede realizar con la credencial del dispositivo o a través de la compilación de un sistema de autenticación dentro de tu app.
Además, antes de sincronizar datos sensibles, los navegadores compilados para el SO Android Automotive deben solicitar al usuario que se autentique y proporcionar mensajes que le informen que sus datos se están sincronizando con el vehículo. Si el usuario no tiene configurado ningún método de autenticación, puedes solicitarle que establezca uno cuando intente sincronizar datos sensibles, ya sea usando la credencial del dispositivo o una específica para tu app.
Cómo usar la credencial del dispositivo para la autenticación
En esta sección, se proporciona orientación para usar las credenciales del dispositivo y las APIs de autenticación del sistema para cumplir con los requisitos de datos sensibles descritos antes.
Cómo comprobar si hay una credencial del dispositivo establecida
Para determinar si el usuario protegió su dispositivo con un PIN, un patrón o una contraseña, puedes usar el método 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();
Abre la configuración de la pantalla de bloqueo
Para reducir las dificultades de los usuarios en el caso de que necesiten establecer una credencial del dispositivo, puedes abrir la pantalla de Seguridad de la app de Configuración con la acción de intent Settings.ACTION_SECURITY_SETTINGS
.
Kotlin
context.startActivity(Intent(Settings.ACTION_SECURITY_SETTINGS))
Java
context.startActivity(new Intent(Settings.ACTION_SECURITY_SETTINGS))
Solicita al usuario que se autentique
Para pedirle al usuario que se autentique, puedes usar la API de BiometricPrompt
como se describe en el artículo Muestra un diálogo de autenticación biométrica.