Служба Android Camera Service включает стек камер, используемых в автомобильных устройствах, а также в других форм-факторах, таких как мобильные телефоны, планшеты и телевизоры. Чтобы просмотреть общую архитектуру камеры, см. Camera . Эта страница посвящена темам, специфичным для автомобильных устройств, и работе с API Android Camera .
Включить службу камеры Android
Чтобы включить службу Android Camera Service на автомобильной платформе, в make-файле продукта необходимо указать ENABLE_CAMERA_SERVICE
как true
.
Характеристики автомобильной камеры
В контексте автомобильных устройств камера HAL должна включать в себя две отличительные характеристики, характерные для автомобильного форм-фактора:
Имя | Описание |
---|---|
android.automotive.location | Определяет расположение камер относительно кузова транспортного средства. |
android.automotive.lens.facing | Указывает, в каком направлении направлен объектив камеры относительно кузова транспортного средства и пассажирских сидений. |
В ситуациях, когда камеры не точно совпадают с определенным местоположением или ориентацией объектива (на что указывает наличие *_OTHER
в характеристиках android.automotive.location
или android.automotive.lens.facing
), или когда несколько камер имеют одинаковое местоположение и направление, HAL камеры должен предоставлять дополнительные характеристики, позволяющие приложениям точно определять местоположение камеры. Эти характеристики включают:
Предоставить доступ пользователю Headless System
Некоторые системные и сторонние (1P) приложения могут получать доступ к камере как пользователь Headless System, также известный как Пользователь 0. Эта функция гарантирует, что критически важные для безопасности приложения, такие как камера заднего вида, могут продолжать потоковую передачу камеры без прерывания, независимо от переключения пользователя переднего плана. Только приложения, подписанные платформой и имеющие новое разрешение android.permission.CAMERA_HEADLESS_SYSTEM_USER
, могут получать доступ к камере как Пользователь 0.
Для приложений, получающих доступ к камерам как Пользователь 0, данные камеры ДОЛЖНЫ потребляться локально и НЕ ДОЛЖНЫ передаваться с устройства, включая любые данные, полученные из данных камеры. Эти приложения требуют, чтобы разрешение android.permission.CAMERA
было предварительно предоставлено, и должны соответствовать политике предварительного предоставления разрешений, изложенной в требованиях Design for Driving for GAS.
Настройте список разрешенных конфиденциальных данных камеры
Производители оригинального оборудования (OEM) теперь могут настраивать определенные приложения камеры для включения в список разрешенных, который предоставляет доступ к камере независимо от состояния переключателя конфиденциальности камеры. Эта функция позволяет пользователям отключать доступ к камере для развлекательных приложений, таких как социальные сети и видеоконференции, одновременно разрешая доступ к камере для определенных приложений из списка разрешенных.
Эту функцию могут использовать только системные и привилегированные приложения, которым предоставлено разрешение android.permission.CAMERA_PRIVACY_ALLOWLIST
. Партнеры Google Automotive Services (GAS) должны отправлять свои разрешенные приложения на проверку и соблюдать политику разрешенного списка конфиденциальности. Чтобы узнать больше, см. Android for Cars .
Добавить приложение в список разрешенных
В каталоге etc/sysconfig
:
Добавьте имя пакета приложения в XML-файл конфигурации системы:
<!-- In an xml file under etc/sysconfig —> <!-- Allowlisted packages for the camera privacy toggle. Users will not be able to turn the privacy on for these packages as OEM requires camera access for these packages to preserve user safety. --> <config> <camera-privacy-allowlisted-app package="package_name" /> </config>
Добавьте URL-адрес приложения для раскрытия политики конфиденциальности в
AndroidManifest.xml
. Имяmeta-data
должно бытьprivacy_policy
.<meta-data android:name="privacy_policy" android:value= privacy policy URL/>
По умолчанию переключатель конфиденциальности камеры для разрешенных приложений или обязательных приложений скрыт в пользовательском интерфейсе настроек конфиденциальности . Однако OEM-производители могут переопределить это поведение, установив следующий флаг в значение TRUE
. Это позволяет OEM-производителям настраивать видимость переключателя конфиденциальности камеры для обязательных приложений на основе своих предпочтений.
<!-- Whether to show the toggle to turn on the camera privacy for required apps -->
<bool name="config_show_camera_required_apps_toggle">false</bool>
Получите ранний доступ к камере
Определенные чувствительные ко времени и ориентированные на безопасность приложения могут получить доступ к камере до завершения процесса загрузки Android. Однако этот доступ предоставляется исключительно привилегированным клиентам с UID AID_AUTOMOTIVE_EVS
. Чтобы узнать больше о назначении определенного UID собственному приложению, см. Дискреционный контроль доступа (DAC) . Этот ранний доступ к камере ограничен системными камерами, расположенными снаружи кузова автомобиля.