Создание браузеров для Android Automotive OS

Категория «Браузеры» находится в стадии бета-тестирования.
В настоящее время любой желающий может публиковать браузеры для внутренних тестовых треков в Play Store. Публикация для закрытых тестовых треков, открытых тестовых треков и производственных треков будет разрешена позднее.

Помимо требований, описанных в разделах Создание припаркованных приложений для автомобилей и Добавление поддержки Android Automotive OS в ваше припаркованное приложение , существует несколько дополнительных требований, специфичных для браузеров, которые подробно описаны на этой странице.

Разрешить пользователям блокировать доступ к конфиденциальным данным

В отличие от многих устройств Android, транспортные средства Android Automotive OS часто являются общими устройствами. Чтобы предоставить пользователям возможность защитить свои конфиденциальные данные, такие как пароли и платежную информацию, браузеры, созданные для Android Automotive OS , не должны сохранять или разрешать доступ к паролям или платежной информации, если только пользователь не может заблокировать доступ к паролям с помощью блокировки профиля . Аутентификация может быть выполнена либо с использованием учетных данных устройства, либо путем создания системы аутентификации в вашем приложении.

Кроме того, перед синхронизацией конфиденциальных данных браузеры, созданные для Android Automotive OS , должны предложить пользователю пройти аутентификацию и предоставить сообщение, чтобы сообщить пользователю, что его данные синхронизируются с автомобилем . Если у пользователя не настроен какой-либо метод аутентификации, вы можете предложить ему настроить его при попытке синхронизировать конфиденциальные данные, используя либо учетные данные устройства , либо данные, специфичные для вашего приложения.

Используйте учетные данные устройства для аутентификации

В этом разделе приведены рекомендации по использованию API-интерфейсов аутентификации учетных данных устройства и системы для выполнения описанных ранее требований к конфиденциальным данным.

Проверьте, установлены ли учетные данные устройства.

Чтобы определить, защитил ли пользователь свое устройство с помощью PIN-кода, графического ключа или пароля, можно использовать метод KeyguardManager::isDeviceSecure .

Котлин

val keyguardManager = context.getSystemService(KeyguardManager::class.java)
val isDeviceSecure = keyguardManager.isDeviceSecure()

Ява

KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
boolean isDeviceSecure = keyguardManager.isDeviceSecure();

Откройте настройки экрана блокировки.

Чтобы уменьшить неудобства для пользователя в случае, если ему необходимо настроить учетные данные устройства, вы можете открыть экран «Безопасность» в приложении «Настройки» с помощью действия намерения Settings.ACTION_SECURITY_SETTINGS .

Котлин

context.startActivity(Intent(Settings.ACTION_SECURITY_SETTINGS))

Ява

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

Предложить пользователю пройти аутентификацию

Чтобы предложить пользователю пройти аутентификацию, можно использовать API BiometricPrompt , как описано в разделе Отображение диалогового окна биометрической аутентификации .