1.Android Automotive(安卓汽车):这是Google开发的一种操作系统,专为汽车嵌入式系统而设计。它是一个完整的汽车操作系统,旨在将智能手机、智能家居设备和汽车系统无缝连接起来,并提供车载娱乐、导航、通信等功能。Android Automotive提供了更大的自由度和灵活性,允许汽车制造商根据自己的需求进行定制和开发特定的车载应用和功能。
2.Android Auto(安卓汽车互联):这是一个演示车载系统,在连接兼容的Android手机后,通过汽车中控屏显示一些特定的应用和功能。Android Auto的主要目标是提供一个车载系统,以更安全、更便捷的方式使用Android手机上的应用和服务,如导航、音乐、通讯等。用户可以通过语音控制、控制按钮或车辆中控屏幕与Android Auto进行交互。
尽管Android Automotive和Android Auto都与汽车领域有关,但它们的重点和应用领域是不同的。Android Automotive是一种完整的操作系统,用于汽车的嵌入式系统,而Android Auto是一种桥接解决方案,将安卓手机上的应用和服务与车载系统进行互联。
除了系统需要了解以外,还有一些常见的车载应用需要我们去了解,比如:SystemUI、Launcher、Settings、CarService、VehicleSettings、HVAC、Map、Multi-Media……等,其实还有很多Service需要去做定制化的操作。
对于一些之前没有去了解车载开发的小伙伴,看到这些估计有点懵,感觉知识点太多了,比传统的Android 开发要学习内容都要多和复杂。
其实并不是这样,如果你是零开始学的话,可以说很难。但你有Android 开发的经验来学习其实算简单的了,最少Android 中的那些基础你不需要从零开始学习了,还有就是像Android 中的MVVM架构、性能优化、Framework……等这些内容,在Android 开发中经常遇到。
像Android 中的Framework层与比亚迪Dilink系统的Framework层在功能上有一些相似之处,**比如核心功能方面(系统服务管理、应用程序管理、资源管理、通信管理等)、应用程序接口(都提供了丰富的API接口)、都支持应用程序开发、实现系统与应用程序的交互(处理应用程序的启动、生命周期管理、事件分发等)。**但在实现细节上只有一点点小差异,毕竟一个为通用移动设备设计的,另一个是为汽车系统而设计。
总之,成为一名Android车载开发工程师需要深厚的技术功力,同时他们需要不断学习并更新专业知识和技能,以应对未来Android车载应用市场的不断变化,并更好地实现车载应用的创新和发展。
针对车载Android 开发所需要学习的内容,整理了以下的知识路线:
路线有了,那自然参考的学习文档笔录也不会少,大家可以参考:https://qr18.cn/F05ZCM
Android 车载学习手册:
- 第一章——Android Auto概述
- 第二章——开发汽车媒体应用
- 第三章——构建 Android Auto即时通信应用
- 第四章——构建车载导航和地图的注点应用
- 第五章——构建 Android Automotive OS 视频应用
《Android Framework学习手册》:https://qr18.cn/AQpN4J
- 开机Init 进程
- 开机启动 Zygote 进程
- 开机启动 SystemServer 进程
- Binder 驱动
- AMS 的启动过程
- PMS 的启动过程
- Launcher 的启动过程
- Android 四大组件
- Android 系统服务 - Input 事件的分发过程
- Android 底层渲染 - 屏幕刷新机制源码分析