Tworzenie przeglądarek na potrzeby systemu operacyjnego Android Automotive

Kategoria Przeglądarki jest w wersji beta
Obecnie każdy może publikować przeglądarki na ścieżkach testów wewnętrznych w Sklepie Play. Publikowanie na ścieżkach testów zamkniętych, otwartych i produkcyjnych będzie możliwe w późniejszym terminie.

Oprócz wymagań opisanych na stronach Tworzenie aplikacji na postoju na samochodyDodawanie obsługi systemu operacyjnego Android Automotive do aplikacji na postoju istnieją jeszcze dodatkowe wymagania dotyczące przeglądarek, które zostały szczegółowo opisane na tej stronie.

Oznaczanie aplikacji jako przeglądarki

Aby wskazać, że aplikacja jest przeglądarką, musi ona zawierać filtr intencji, np. taki jak poniżej, w wyeksportowanym elemencie <activity>:

<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>

Zezwalanie użytkownikom na blokowanie dostępu do danych wrażliwych

W przeciwieństwie do wielu urządzeń z Androidem pojazdy z systemem operacyjnym Android Automotive są często urządzeniami współdzielonymi. Aby umożliwić użytkownikom ochronę danych wrażliwych, takich jak hasła i informacje o płatnościach, przeglądarki przeznaczone na Androida Automotive nie mogą zapisywać haseł ani informacji o płatnościach ani zezwalać na dostęp do nich, chyba że użytkownik może zablokować dostęp do haseł za pomocą blokady profilu. Uwierzytelnianie można przeprowadzić za pomocą danych logowania urządzenia lub przez utworzenie systemu uwierzytelniania w aplikacji.

Dodatkowo przed zsynchronizowaniem danych wrażliwych przeglądarki przeznaczone na Androida Automotive muszą wyświetlić użytkownikowi prośbę o uwierzytelnienie i powiadomienie o tym, że jego dane są synchronizowane z samochodem. Jeśli użytkownik nie ma skonfigurowanej żadnej metody uwierzytelniania, możesz poprosić go o jej skonfigurowanie, gdy spróbuje zsynchronizować dane wrażliwe, używając danych logowania urządzenia lub danych logowania specyficznych dla Twojej aplikacji.

Używanie danych logowania urządzenia do uwierzytelniania

W tej sekcji znajdziesz wskazówki dotyczące korzystania z interfejsów API danych logowania do urządzenia i uwierzytelniania systemu, aby spełnić opisane wcześniej wymagania dotyczące danych wrażliwych.

Sprawdzanie, czy są ustawione dane logowania urządzenia

Aby sprawdzić, czy użytkownik zabezpieczył urządzenie kodem PIN, wzorem lub hasłem, możesz użyć metody 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();

Otwórz ustawienia ekranu blokady

Aby zmniejszyć trudności użytkowników w przypadku konieczności ustawienia danych logowania na urządzeniu, możesz otworzyć ekran Bezpieczeństwo w aplikacji Ustawienia za pomocą działania intencji Settings.ACTION_SECURITY_SETTINGS.

Kotlin

context.startActivity(Intent(Settings.ACTION_SECURITY_SETTINGS))

Java

context.startActivity(new Intent(Settings.ACTION_SECURITY_SETTINGS))

Proś użytkownika o uwierzytelnienie

Aby poprosić użytkownika o uwierzytelnienie, możesz użyć interfejsu BiometricPrompt API zgodnie z opisem w artykule Wyświetlanie okna uwierzytelniania biometrycznego.