Browser für Android Automotive OS entwickeln

Die Kategorie „Browser“ befindet sich in der Betaphase
Derzeit kann jeder Browser in den Tracks für interne Tests im Google Play Store veröffentlichen. Die Veröffentlichung in Tracks für geschlossene Tests, offene Tests und Produktions-Tracks wird zu einem späteren Zeitpunkt zugelassen.

Zusätzlich zu den Anforderungen, die unter Apps für geparkte Autos entwickeln und Unterstützung von Android Automotive OS zu deiner App für geparkte Autos hinzufügen beschrieben werden, gibt es einige zusätzliche Anforderungen speziell für Browser, die auf dieser Seite beschrieben werden.

App als Browser kennzeichnen

Damit Ihre 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 finden Sie unter android.intent.category.APP_BROWSER.

Nutzern erlauben, den Zugriff auf sensible Daten zu blockieren

Im Gegensatz zu vielen Android-Geräten sind Android Automotive OS-Fahrzeuge oft gemeinsam genutzte Geräte. Damit Nutzer ihre vertraulichen Daten wie Passwörter und Zahlungsinformationen schützen können, dürfen in für Android Automotive OS entwickelten Browsern Passwörter oder Zahlungsinformationen nur gespeichert oder der Zugriff darauf nur zugelassen werden, wenn der Nutzer den Zugriff auf Passwörter über eine Profilsperre blockieren kann. Die Authentifizierung kann entweder über die Geräteanmeldedaten oder durch die Entwicklung eines Authentifizierungssystems in Ihrer 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 ihm eine Benachrichtigung anzeigen, dass seine Daten mit dem Auto synchronisiert werden. Wenn der Nutzer keine Authentifizierungsmethode eingerichtet hat, können Sie ihn auffordern, eine einzurichten, wenn er versucht, sensible Daten zu synchronisieren. Dazu können Sie entweder die Geräteanmeldedaten oder eine für Ihre App spezifische Methode verwenden.

Geräteanmeldedaten für die Authentifizierung verwenden

In diesem Abschnitt finden Sie Informationen zur Verwendung der APIs für Geräteanmeldedaten und Systemauthentifizierung, um die zuvor beschriebenen Anforderungen an sensible Daten zu erfüllen.

Prüfen, ob Anmeldedaten für das Gerät festgelegt sind

Mit der Methode KeyguardManager::isDeviceSecure können Sie 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

Um die Reibung für Nutzer zu verringern, wenn sie Anmeldedaten für ein Gerät festlegen müssen, können Sie den Sicherheitsbildschirm in den Einstellungen mit der Intent-Aktion Settings.ACTION_SECURITY_SETTINGS öffnen.

context.startActivity(
    Intent(Settings.ACTION_SECURITY_SETTINGS)
        .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
)

Nutzer zur Authentifizierung auffordern

Wenn Sie den Nutzer zur Authentifizierung auffordern möchten, können Sie die BiometricPrompt API verwenden, wie unter Biometrisches Authentifizierungsdialogfeld anzeigen beschrieben.