您当前的位置:首页 > 互联网教程

Android 车机初体验:Auto,Automotive 傻傻分不清楚

发布时间:2025-05-11 18:06:07    发布人:远客网络

Android 车机初体验:Auto,Automotive 傻傻分不清楚

一、Android 车机初体验:Auto,Automotive 傻傻分不清楚

1、深入解析Android Automotive OS与Android Auto的差异,揭示汽车科技的奥秘。

2、Android Automotive OS,简称AAOS,是Android OS的扩展版本,专为车载硬件设计,拥有高度可定制的全栈开源平台。在电动车的浪潮中,AAOS为汽车制造商提供了强大的信息娱乐技术支持。

3、与Android Auto不同,后者并非操作系统,而是一个集成在Android OS中的特性功能。当Android手机通过USB或Wi-Fi与支持Android Auto的车机连接时,手机的Auto模式APP会自动加载并投影到车机屏幕上。与CarPlay类似,其本质是屏幕投射,手机提供计算和渲染,车机仅作为显示设备,接收输入事件。

4、AAOS作为操作系统,属于AOSP项目,其代码集成在Android OS中。在编译时选择汽车目标,即可生成车载机使用的AAOS。它不仅支持Android Auto应用,还能运行Android OS应用,然而,主流互联网应用往往未适配AAOS,导致车机UI的定制工作主要由汽车制造商承担。

5、为了便于在开发过程中模拟车载环境,Google和汽车制造商提供了AAOS模拟器。官方提供了AAOS Image,但在某些情况下,用户可能无法访问到这些资源。Volvo及其子品牌Polestar作为最早采用AAOS的汽车制造商,提供了Image,虽然不支持ARM架构,但仍可在PC上安装体验。通过添加Volvo的站点URL至SDK Manager,用户可以创建汽车机模拟器。

6、模拟器提供了丰富的界面,包括抽屉、视频、座椅、空调等图标,以及常用应用如地图、蓝牙、Google Assistant等。用户可以通过Google Assistant进行语音操作,抽屉按钮可访问Google Play和汽车使用说明等应用。

7、开发针对AAOS的应用,官方提供了Car相关SDK和Android for Cars App Library,这些工具兼容非Car设备,通过AndroidX集成。此外,还提供了导航等场景的开发示例,这些示例在保持通用性的同时,支持不同的开发环境。

8、使用DHU将手机转换为Android Auto模式,可测试应用在Auto模式下的表现。而将Sample Apk运行在Volvo或Polestar2的模拟器中时,可能会遇到依赖于Car中最新特性的问题,需要AAOS下载并安装最新版的GoogleAutomotive App Host Apk。尽管面临挑战,但成功运行AAOS模拟器,深入理解了车载应用开发的独特场景,为未来的研究奠定了基础。

二、一文讲解Android车载系统camera架构 - EVS

本文将深入解析Android车载系统中为适应汽车环境而设计的EVS(Exterior View System)架构。在Android的camera开发中,广泛使用的camera2与cameraX架构主要针对手机移动端camera的流程,而EVS架构则专注于汽车外景系统,如倒车影像和360全景影像。本文将逐步剖析EVS架构的四个关键组件:EVS APP、EVS Manager、EVS HAL,以及Vehicle HAL。

EVS APP作为用户界面,接收并处理来自EVS Manager的底层HAL传递的camera数据。在Android 12中,EVS APP仅支持简单的图像预览。EVS APP的基本流程涉及枚举底层配置的video设备节点,筛选支持的格式,最后将符合条件的设备纳入sCameraList。在需要Vehicle HAL的前提下,EVS APP连接Vehicle HAL以订阅车辆挡位和转向灯信息,并在外部输入变化时通过回调处理这些数据。同时,EVS APP通过EvsStateControl状态更新线程调整运行状态,实现图像绘制。

EVS Manager作为EVS架构的中心,为APP提供与EVS HAL交互的接口。它实现与底层HAL驱动程序相同的API,支持多个客户端并发访问相机流。EVS Manager管理EVS Camera与EVS Display,并提供权限管理和诊断功能。EVS Manager对HAL接口进行封装,增加额外功能,如数据统计、诊断等,并支持虚拟Camera设备。

EVS HAL作为硬件抽象层,与内核驱动交互,获取摄像头数据。它提供EVS Camera与EVS Display两个抽象对象,是OEM厂商关注的核心部分。EVS HAL存在1.0与1.1两个版本,1.1版本在HIDL接口中增加了IEvsUltrasonicsArray.hal与IEvsUltrasonicsArrayStream.hal文件,为可能存在的超声波Sensor提供API,支持自动驾驶需求。

Vehicle HAL作为整体Android Automotive版本的通信桥梁,向下接入通信接口,向上服务于Java Framework和Native Framework。它定义和实现接口,用于汽车其他控制器之间的通信。

相较于camera2,EVS架构专注于车外摄像头,这些摄像头位置固定,视角较为统一,因此系统对摄像头的控制相对较少。而camera2则用于手机camera控制,提供更灵活的调节方法和参数设置。EVS架构强调快速启动、响应和低延迟,适合车载系统需求,而camera2架构则在Java Framework层提供了丰富API,简化应用开发。

EVS架构的开发难度相对较高,需要开发者构建Input管理、View子系统,并使用OpenGL ES API进行图像绘制。市面上关于camera2架构的资源较多,而关于EVS架构的分析较少,本文旨在提供基本介绍和分析,鼓励感兴趣的读者共同研究学习。

总结,EVS架构是针对汽车外景系统设计的camera架构,其组件包括EVS APP、EVS Manager、EVS HAL和Vehicle HAL。EVS架构在控制、启动速度和延迟方面满足车载系统需求,与camera2架构在应用场景、控制复杂度和开发难度上存在显著差异。未来,我们将对EVS架构的使用细节进行深入分析。

三、android auto国内能用吗 - 知百科

1、android auto国内不能用。Android Auto是由美国汽车制造商通用汽车(General Motors)开发的车载娱乐系统,旨在为驾驶员提供更加安全、便利的驾车体验。虽然Android Auto在美国市场上得到了广泛的应用,但在中国大陆地区,由于政策限制和法律问题,目前无法在所有车辆上使用Android Auto。

2、在中国大陆地区,一些汽车制造商已经开始推广自己的车载娱乐系统,例如比亚迪DiLink、长城WeLink等,这些系统与Android Auto类似,可以通过USB接口或无线网络连接到智能手机上,实现音乐播放、电话通话、导航等功能。但是,由于中国政府对车载娱乐系统的管控比较严格,一些汽车制造商可能会受到政策限制,无法在所有车辆上使用Android Auto或其他国外品牌的车载娱乐系统。