El Servicio de cámara de Android (ACS) incluye la pila de la cámara que se usa en dispositivos automotrices, así como en otros factores de forma, como teléfonos celulares, tablets y TVs. Para ver la arquitectura general de la cámara, consulta Cámara. En esta página, se abordan temas específicos de los dispositivos automotrices y el trabajo con la API de Android Camera.
Cómo habilitar el Servicio de cámara de Android
Para habilitar el Servicio de cámara de Android en la plataforma automotriz, el archivo makefile del producto debe especificar ENABLE_CAMERA_SERVICE como true.
Características de la cámara específicas para el sector automotriz
En el contexto de los dispositivos automotrices, la HAL de la cámara debe incluir dos características distintivas específicas del factor de forma automotriz:
| Elemento | Descripción |
|---|---|
android.automotive.location |
Especifica la posición de las cámaras en relación con el marco de la carrocería del vehículo. |
android.automotive.lens.facing |
Indica la dirección hacia la que apunta la lente de una cámara en relación con el marco de la carrocería del vehículo y los asientos de los pasajeros. |
En situaciones en las que las cámaras no se alinean con precisión con una ubicación o una orientación de la lente
específicas (indicadas por la presencia de *_OTHER en las
android.automotive.location o android.automotive.lens.facing
características), o cuando varias cámaras comparten la misma ubicación y
dirección, la HAL de la cámara debe proporcionar características adicionales para permitir que las apps determinen con precisión la ubicación de la cámara. Estas características incluyen las siguientes:
Cómo otorgar acceso al usuario del sistema sin interfaz gráfica
Ciertas apps del sistema y propias (1P) pueden acceder a la cámara como el usuario del sistema sin interfaz gráfica, también conocido como Usuario 0. Esto ayuda a verificar que las apps esenciales para la seguridad, como la cámara de visión trasera, puedan continuar transmitiendo la cámara sin interrupciones, independientemente del cambio de usuario en primer plano. Solo las apps que están firmadas por la plataforma y tienen el nuevo permiso android.permission.CAMERA_HEADLESS_SYSTEM_USER pueden acceder a la cámara como Usuario 0.
En el caso de las apps que acceden a las cámaras como Usuario 0, los datos de la cámara SE DEBEN consumir de forma local y NO SE DEBEN transmitir fuera del dispositivo, incluidos los datos derivados de los datos de la cámara. Estas apps requieren que el permiso android.permission.CAMERA
se otorgue previamente y deben cumplir con la política de permisos otorgados previamente que se describe en
Diseño para la conducción para los requisitos de Google integrado.
Cómo configurar una lista de entidades permitidas de privacidad de la cámara
Los fabricantes de equipos originales (OEMs) ahora pueden configurar apps de cámara específicas para que se incluyan en una lista de entidades permitidas que otorga acceso a la cámara, independientemente del estado del botón de alternancia de privacidad de la cámara. Esta función permite a los usuarios inhabilitar el acceso a la cámara para las apps de entretenimiento, como las redes sociales y las videoconferencias, y, al mismo tiempo, permitir el acceso a la cámara para ciertas apps en la lista de entidades permitidas.
Solo las apps del sistema y las apps privilegiadas a las que se les otorgó el permiso android.permission.CAMERA_PRIVACY_ALLOWLIST pueden usar esta función.
Los socios de Google Automotive Services (GAS) deben enviar sus apps en la lista de entidades permitidas para su revisión y cumplir con la política de lista de entidades permitidas de privacidad. Para obtener más información, consulta Android para vehículos.
Cómo agregar una app a la lista de entidades permitidas
En el directorio etc/sysconfig, haz lo siguiente:
Agrega el nombre del paquete de la app en un archivo XML de configuración del sistema:
<!-- In an xml file under etc/sysconfig -> <!-- Allowlisted packages for the camera privacy toggle. Users can't turn on privacy for these packages as OEM requires camera access for these packages to preserve user safety. --> <config> <camera-privacy-allowlisted-app package="package_name" /> </config>Agrega la URL de la divulgación de la política de privacidad de la app a
AndroidManifest.xml. El nombre demeta-datadebe serprivacy_policy.<meta-data android:name="privacy_policy" android:value= privacy policy URL/>
De forma predeterminada, el botón de alternancia de privacidad de la cámara para las apps en la lista de entidades permitidas o las apps obligatorias está oculto en la IU de Configuración de privacidad. Sin embargo, los OEMs pueden anular este comportamiento si configuran la siguiente marca como true. Esto permite a los OEMs personalizar la visibilidad del botón de alternancia de privacidad de la cámara para las apps obligatorias según sus preferencias.
<!-- Whether to show the toggle to turn on the camera privacy for required apps -->
<bool name="config_show_camera_required_apps_toggle">false</bool>
Cómo obtener acceso anticipado a la cámara
Las apps específicas sensibles al tiempo y orientadas a la seguridad pueden acceder a la cámara antes de que finalice el proceso de arranque de Android. Sin embargo, este acceso se otorga exclusivamente a clientes privilegiados con el UID AID_AUTOMOTIVE_EVS. Para obtener más información
sobre cómo asignar un UID específico a una app del sistema, consulta
Control de acceso discrecional (DAC). Este acceso anticipado a la cámara se limita a las cámaras del sistema ubicadas en el exterior de la carrocería del vehículo.