- 博客(90)
- 资源 (14)
- 收藏
- 关注
原创 【AAOS】【源码分析】Car Bluetooth(十) -- AAOS与AOSP Bluetooth的区别和联系
摘要:AAOS蓝牙框架基于AOSP的Fluoride协议栈,但针对车载场景进行了扩展。主要差异包括:强制支持车载专用Profile(如HFP、PBAP)、新增CarBluetooth服务、实现多用户管理、定制符合驾驶安全的UI界面,以及为OEM预留音频路由等定制接口。AOSP侧重通用设备功能,而AAOS强调驾驶场景适配,在保持核心协议栈不变的前提下,通过分层扩展满足车规级需求。
2025-08-27 10:25:09
757
原创 【AAOS】Android Automotive 16模拟器源码下载及编译
摘要:Android车载系统源码编译运行指南。首先通过repo工具下载源码(repo init + repo sync),然后执行环境配置和编译(source envsetup.sh + lunch + make)。编译完成后使用emulator命令运行模拟器,可看到车载系统界面效果,包括Home主屏、应用列表、设置菜单、HVAC空调控制以及通知中心等功能模块。该过程完整展示了从源码下载到模拟运行的Android车载系统开发流程。
2025-08-19 11:37:33
274
原创 【AAOS】【源码分析】Car Bluetooth(三) -- 蓝牙启动
Android蓝牙启动流程分为三个关键阶段:1)内核层加载蓝牙驱动并初始化HCI接口;2)HAL层通过init.rc启动蓝牙硬件服务进程;3)SystemServer启动蓝牙管理服务。具体流程为:内核加载驱动后创建/dev/hci0设备,init.rc启动HAL服务进程,SystemServer发布BluetoothManagerService,随后调用HAL接口初始化HCI协议栈,最终完成蓝牙协议栈启动进入STATE_ON状态。该过程实现了从底层驱动到上层服务的完整启动链路。
2025-07-20 13:55:56
953
原创 【AAOS】【源码分析】Car Bluetooth(二) -- 整体源码
Android13将蓝牙设为可选Mainline模块,通过APEX包格式(包含APK、原生库和API)实现快速更新和安全修复。代码结构分为接口层、框架层、系统服务层和协议栈模块,支持独立升级,旨在减少碎片化、提升安全性和用户体验。该设计能降低维护成本,加快功能迭代,并解决蓝牙相关的安全漏洞问题。
2025-07-20 13:51:11
387
原创 【AAOS】【源码分析】Car Bluetooth(一) -- 基本介绍
大部分逻辑在Linux 内核中,用户空间通过 D-Bus 调用。:使用 D-Bus 作为通信机制。:Android 上兼容性差,D-Bus 效率低,接口杂乱。
2025-06-23 17:32:02
530
原创 【AAOS】【源码分析】用户管理(五)-- MUMD介绍
MUMD(多用户多屏显示)是Android Automotive OS为车载多乘员场景设计的功能,支持不同座位用户独立操作各自屏幕。
2025-06-20 17:23:23
1037
原创 【AAOS】【源码分析】CarFramework
CarFramework是专为汽车定制的Android框架,主要区别在于它提供特定汽车API和服务。
2025-06-13 16:53:21
856
原创 【AAOS】【源码分析】用户管理(四)-- 用户切换
文章摘要:Android用户切换流程分为UI触发和HAL层触发两种方式,主要涉及用户检测、创建和切换三个环节。当目标用户不存在时,系统会执行createUser()创建新用户并初始化相关配置;若用户存在则直接切换。HAL层支持7种自动切换场景,包括车钥匙认证、座椅识别、人脸识别等。该功能由CarUserManager模块实现,采用后台线程切换以避免UI阻塞。整个流程涵盖用户管理、HAL通信和系统服务协同工作,在车载等多用户场景中实现无缝身份切换。
2025-06-10 15:56:32
269
原创 【AAOS】【源码分析】用户管理(一)-- 基本介绍
Android是一个基于Linux内核的操作系统,因此Android也支持多用户模式,即可以在同一台设备上创建多个用户账户,每个用户都有自己的应用、数据和设置。这样可以保护用户的隐私,也可以方便不同的使用场景。但是,Android的多用户机制并不完全等同于Linux的用户组机制,它们之间依然有较大的差异。
2025-05-21 09:55:37
1028
原创 【AAOS】【源码分析】电源管理(二)-- 车库模式
车库模式(GarageMode)是AAOS(Android Automotive OS)中的一种特殊空闲模式,旨在确保汽车在关闭引擎后仍能执行系统更新、扫描和优化等任务。与手机不同,汽车在关闭后系统通常处于断电状态,因此车库模式通过保持系统唤醒状态,为汽车提供类似手机的空闲时间窗口。当汽车关闭时,系统进入车库模式,显示屏关闭但电源保持接通,允许执行后台任务。用户可以通过ADB命令控制车库模式的启动、结束和状态查询,并设置其持续时间。
2025-05-19 15:11:47
787
原创 【AAOS】【源码分析】CarAudioService(二)-- 功能介绍
车内的音频环境要远比手机设备复杂,除了信息娱乐系统以外,车内的音频设备同样有可能被其他系统使用,因此音频处理也比手机系统更复杂,接下来会通过代码角度来分析车载音频的具体处理逻辑。
2025-04-09 14:32:03
1124
原创 【AAOS】【源码分析】CarAudioService(一)-- 基本介绍
CarAudioService(汽车音频系统)是在核心 Android 音频堆栈的基础之上打造而成,以支持用作车辆信息娱乐系统的情况。AAOS 负责实现信息娱乐声音(即媒体、导航和通讯声音),但不直接负责具有严格可用性和计时要求的铃声和警告。虽然 AAOS 提供了信号和机制来帮助车辆管理音频,但最终还是由车辆来决定应为驾驶员和乘客播放什么声音,从而确保对保障安全至关重要的声音和监管声音能被确切听到,而不会中断。
2025-04-07 14:17:03
731
原创 【AAOS】【源码分析】CarSystemUI -- Keyguard
keyguard实现代码:packages/apps/Car/SystemUI/src/com/android/systemui/car/keyguard。用于锁屏界面的资源文件:packages/apps/Car/SystemUI/res-keyguard。AAOS 15的Keyguard支持多种身份验证方法,包括PIN码、密码、图案解锁。
2025-04-07 10:34:20
594
原创 【AAOS】Android Automotive 14模拟器源码下载及编译
【代码】【AAOS】Android Automotive 14模拟器源码下载及编译。
2024-10-13 15:58:24
936
原创 【AAOS】Android Automotive 15模拟器源码下载及编译
【代码】【AAOS】Android Automotive 15模拟器源码下载及编译。
2024-10-13 11:39:37
1004
原创 【车载以太网】【SOME/IP】vsomeip代码解析--routing_manager
RoutingManager负责维护客户端的订阅列表,并在服务端有新的发布事件时,将该事件路由到所有订阅了该事件的客户端。
2024-09-17 15:38:40
1512
原创 【车载以太网】【SOME/IP】vsomeip代码解析
vsomeip整体配置文件环境变量#define VSOMEIP_ENV_APPLICATION_NAME "VSOMEIP_APPLICATION_NAME" #define VSOMEIP_ENV_CONFIGURATION "VSOMEIP_CONFIGURATION" #define VSOMEIP_ENV_CONFIGURATION_MODULE "VSOMEIP_CONFIGURATION_MODULE" #define VSOMEIP_ENV
2024-09-17 10:08:43
707
翻译 【车载以太网】【SOME/IP】vsomeip介绍
vsomeip 是GENIVI项目中的一个SOME/IP开源实现,基于Mozilla Public Liense v2.0协议开源,由BMW贡献。
2024-09-13 17:33:33
1832
原创 【车载以太网】【SOME/IP】Wireshark 解析
Dissector.get 的参数原本是 someip ,它的参数和 p_someip = Proto(“someip”, xx) 修改后的名字保持一致就没有问题了。Dissector.get 的参数原本是 someip ,它的参数和 p_someip = Proto(“someip”, xx) 修改后的名字保持一致就没有问题了。Wireshark从3.2版本开始支持SOME/IP,启用相应的插件即可以使用Wireshark解析解析并查看SOME/IP数据。
2024-09-13 11:46:36
2395
原创 Android 版本号、版本名称、api版本对照表
NameAPI LevelAndroid 14U34Android 13T33S32S31R30Q29Pie28Orea27Orea26Nougat25Nougat2423Lollipop22Lollipop2120KitKat19。
2024-01-08 16:53:15
2897
转载 RxJava--入门
前言Rxjava由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。本文主要:面向 刚接触Rxjava的初学者 提供了一份 清晰、简洁、易懂的Rxjava入门教程,涵盖 基本介绍、原理 & 具体使用等 解决的是初学者不理解Rxjava原理 & 不懂得如何使用的问题Carson带你学RxJava系列文章,包括 原理、操作符、应用场景、背压等等,请关注看文章:Android:这是一份全面 & 详细的RxJava学习指南
2023-12-15 10:25:18
195
E37&E37.1&E37.2.pdf
2020-07-20
SEMI E4-0699.pdf
2020-07-20
SEMI E5-1104 SEMI EQUIPMENT COMMUNICATIONS STANDARD 2 MESSAGE CONTENT (SECS-II)
2020-07-20
gem-0.2.5-src.zip
2021-09-23
SEMI E30&E30.1&E30.5
2020-07-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人