Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Automotor

Icono de HAL de vehículo Android

Muchos subsistemas de automóviles se interconectan entre sí y con el sistema de información y entretenimiento en el vehículo (IVI) a través de varias topologías de bus. El tipo de bus y los protocolos exactos varían ampliamente entre fabricantes (e incluso entre diferentes modelos de vehículos de la misma marca); los ejemplos incluyen bus Controller Area Network (CAN), bus de red de interconexión local (LIN), transporte de sistemas orientados a medios (MOST), así como redes Ethernet y TCP / IP de grado automotriz como BroadR-Reach.

La capa de abstracción de hardware (HAL) de Android Automotive proporciona una interfaz coherente con el marco de Android independientemente de la capa de transporte físico. Este vehículo HAL es la interfaz para desarrollar implementaciones de Android Automotive.

Los integradores de sistemas pueden implementar un módulo HAL de vehículo conectando interfaces HAL de plataforma específicas de función (p. Ej. HVAC) con interfaces de red específicas de tecnología (p. Ej. Bus CAN). Las implementaciones típicas pueden incluir una Unidad de Microcontrolador (MCU) dedicada que ejecuta un sistema operativo en tiempo real (RTOS) patentado para el acceso al bus CAN o similar, que puede conectarse a través de un enlace en serie a la CPU que ejecuta Android Automotive. En lugar de una MCU dedicada, también puede ser posible implementar el acceso al bus como una CPU virtualizada. Depende de cada socio elegir la arquitectura adecuada para el hardware siempre que la implementación cumpla con los requisitos de interfaz para la HAL del vehículo.

Arquitectura

El vehículo HAL es la definición de interfaz entre el vehículo y el servicio de red del vehículo:

Arquitectura HAL de vehículos Android

Figura 1 . Arquitectura automotriz de vehículos HAL y Android

  • API de coche . Contiene las API, incluido CarSensorManager . Para obtener detalles sobre las API compatibles, consulte /platform/packages/services/Car/car-lib .
  • CarService . Ubicado en /platform/packages/services/Car/ .
  • Vehículo HAL . Interfaz que define las propiedades del vehículo que pueden implementar los OEM. Contiene metadatos de propiedad (por ejemplo, si la propiedad del vehículo es un int y qué modos de cambio están permitidos). Ubicado en hardware/libhardware/include/hardware/vehicle.h . Para una implementación de referencia básica, consulte hardware/libhardware/modules/vehicle/ .

Para obtener más detalles, consulte Propiedades del vehículo .

Seguridad

El vehículo HAL admite estos niveles de seguridad al acceder a los datos:

  • Accesible a la aplicación con permiso (a través del servicio de automóvil).
  • Accesible sin permiso (a través del servicio de automóvil).

El acceso directo a las propiedades del vehículo está permitido solo a componentes seleccionados del sistema con red de vehículos con protección de acceso selinux. La mayoría de las aplicaciones pasan por un control adicional por parte del servicio de automóvil (por ejemplo, solo las aplicaciones del sistema pueden controlar el HVAC, ya que requiere un permiso del sistema otorgado solo a las aplicaciones del sistema).