Neben den Anforderungen, die unter Geparkte Apps für Autos entwickeln und Unterstützung von Android Automotive OS zu deiner geparkten App hinzufügen, beschrieben werden, gibt es einige zusätzliche Anforderungen speziell für Browser, die auf dieser Seite näher erläutert werden.
App als Browser kennzeichnen
Damit deine App als Browser gekennzeichnet wird, muss sie in einem exportierten <activity> Element einen Intent-Filter wie
den folgenden enthalten:
<activity ...
android:exported="true">
...
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
...
<category android:name="android.intent.category.APP_BROWSER"/>
</intent-filter>
</activity>
Weitere Informationen findest du unter
android.intent.category.APP_BROWSER.
Nutzern die Möglichkeit geben, den Zugriff auf sensible Daten zu blockieren
Im Gegensatz zu vielen Android-Geräten werden Fahrzeuge mit Android Automotive OS oft von mehreren Personen genutzt. Damit Nutzer ihre sensiblen Daten wie Passwörter und Zahlungsinformationen schützen können, dürfen Browser, die für Android Automotive OS Passwörter oder Zahlungsinformationen nur speichern oder den Zugriff darauf zulassen, wenn der Nutzer den Zugriff auf Passwörter mit einer Profilsperre blockieren kann. Die Authentifizierung kann entweder mit den Anmeldedaten des Geräts oder durch Erstellen eines Authentifizierungssystems in deiner App erfolgen.
Außerdem müssen Browser, die für Android Automotive OS entwickelt wurden, den Nutzer vor dem Synchronisieren sensibler Daten zur Authentifizierung auffordern und ihn darüber informieren, dass seine Daten mit dem Auto synchronisiert werden. Wenn der Nutzer keine Authentifizierungsmethode eingerichtet hat, kannst du ihn auffordern, eine einzurichten, wenn er versucht, sensible Daten zu synchronisieren. Dabei kann er entweder die Anmeldedaten des Geräts oder eine Methode verwenden, die speziell für deine App gilt.
Anmeldedaten des Geräts für die Authentifizierung verwenden
In diesem Abschnitt erfährst du, wie du die Anmeldedaten des Geräts und die Systemauthentifizierungs-APIs verwenden kannst, um die oben beschriebenen Anforderungen für sensible Daten zu erfüllen.
Prüfen, ob Anmeldedaten für das Gerät festgelegt sind
Mit der Methode KeyguardManager::isDeviceSecure kannst du prüfen, ob der Nutzer sein Gerät mit einer PIN, einem Muster oder einem
Passwort gesichert hat.
val keyguardManager = context.getSystemService<KeyguardManager>() val isDeviceSecure = keyguardManager?.isDeviceSecure == true
Sperrbildschirmeinstellungen öffnen
Wenn der Nutzer Anmeldedaten für das Gerät festlegen muss, kannst du ihm die Einstellungen für die Sicherheit in der Einstellungen-App mit der
Settings.ACTION_SECURITY_SETTINGS
Intent-Aktion öffnen.
context.startActivity( Intent(Settings.ACTION_SECURITY_SETTINGS) .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) )
Nutzer zur Authentifizierung auffordern
Um den Nutzer zur Authentifizierung aufzufordern, kannst du die BiometricPrompt API verwenden, wie
unter Dialog zur biometrischen Authentifizierung anzeigen beschrieben.