新书速览|Android智能座舱开发:从源码到实践

《Android智能座舱开发:从源码到实践》

本书内容

《Android智能座舱开发:从源码到实践》是一本专注于Android智能座舱系统开发与优化的实战指南。《Android智能座舱开发:从源码到实践》共9章 ,第1章从搭建源码编译环境 开始,详细指导读者如何下载和编译Android源码,并将其导入Android Studio,为后续开发工作打下坚实的基础。第2章深入探讨init进程和Zygote进程的启动机制 ,以及如何增加系统级服务,对理解Android系统启动过程至关重要。第3章讲解Android中的跨进程通信(IPC)机制 ,包括Binder框架和AIDL的使用,对于开发需要多进程通信的车载应用非常有用。第4章和第5章针对CarLauncher与CarSystemUI进行深入解析 ,包括布局、功能实现及源码结构,帮助开发者自定义和优化车载界面。第6章和第7章详细介绍活动管理服务(AMS)和窗口管理服务(WMS) ,涵盖进程启动、窗口管理和动画实现等关键知识点。第8章和第9章针对车载系统中常见的双屏交互问题,提供了具体的解决方案,并讨论了性能优化的策略,如包体积优化、界面渲染优化等。

本书作者

左文星,资深软件开发工程师,拥有多年的Android开发经验。曾主导开发多款日活跃用户数达到百万级别的App,完整地经历了产品从零到一的全过程。在职业生涯中,涉足了多个领域,包括Android TV、物联网(IOT)、Android手机系统以及车载系统等,并曾负责过格力手机ROM系统级应用的研发项目。目前在一家国内知名车企工作,专注于智能座舱开发。

本书读者

《Android智能座舱开发:从源码到实践》凝聚了编者多年一线开发经验,技术前沿,注重实践,特别适合希望投身于Android车载系统开发的人员 阅读,也很适合作为培训机构和高校相关专业课程的教学用书

本书目录

第 1 章 AAOS系统概述 1

1.1 智能座舱概述 2

1.2 源码编译环境搭建 2

1.2.1 基础环境搭建 3

1.2.2 下载Android源码 12

1.2.3 使用Android源码包 14

1.2.4 源码编译 16

1.2.5 将源码导入Android Studio 18

1.3 本章小结 20

第 2 章 开机流程与Zygote 21

2.1 Android设备的启动流程 21

2.2 init进程介绍 22

2.3 Zygote进程的启动 24

2.4 Zygote的fork进程 29

2.5 启动系统进程与SystemServer进程 34

2.6 实战:增加系统级服务 45

2.7 本章小结 51

第 3 章 Android中的Binder 52

3.1 跨进程通信 52

3.2 Binder的作用 53

3.3 Binder/IBinder实战 54

3.4 AIDL实战 61

3.4.1 创建项目 61

3.4.2 模拟实战 68

3.5 AIDL实践进阶 71

3.6 AIDL的数据流 75

3.7 Messenger的原理及应用 78

3.8 系统服务的IPC 83

3.9 实战:构建可扩展的保活框架 86

3.10 本章小结 88

第 4 章 CarLauncher 89

4.1 CarLauncher概述 89

4.2 CarLauncher源码结构分析 90

4.3 CarLauncher与FocusArea 104

4.4 CarLauncher实战 107

4.5 本章小结 109

第 5 章 CarSystemUI 110

5.1 走进CarSystemUI 110

5.2 CarSystemUI功能介绍 112

5.3 CarSystemUI源码结构分析 113

5.3.1 CarSystemUI的源码结构 113

5.3.2 SystemUI的源码结构 113

5.3.3 CarSystemUI的修改和编译 114

5.3.4 CarSystemUI的启动时机 115

5.3.5 CarSystemUI的初始化流程 115

5.4 CarSystemUI叠加层 121

5.5 CarSystemUI实战 123

5.6 本章小结 126

第 6 章 AMS及进程启动 127

6.1 AMS的启动过程 127

6.2 ATMS的启动过程 130

6.3 ATMS启动AMS的过程 131

6.4 AMS的初始化内容 132

6.5 AMS的进程设置 136

6.6 进程的启动流程 138

6.7 实战:AMS拦截启动 160

6.8 本章小结 162

第 7 章 WMS窗口管理与服务 163

7.1 功能介绍 164

7.2 Window窗口介绍 165

7.2.1 窗口使用 165

7.2.2 Window的添加过程 172

7.2.3 ViewRootImpl的作用 186

7.2.4 View的操作 190

7.3 Window的管理 200

7.3.1 窗口类型与层级 200

7.3.2 WindowState 205

7.3.3 WindowToken 206

7.3.4 DisplayArea 207

7.3.5 TaskDisplayArea 207

7.3.6 ImeContainer 208

7.3.7 DisplayArea.Dimmable 208

7.3.8 DisplayContent 208

7.3.9 DisplayAreaGroup 208

7.4 WMS服务的启动流程 244

7.4.1 WMS启动 244

7.4.2 WMS调用 246

7.5 窗口动画 249

7.6 本章小结 262

第 8 章 双屏实战 264

8.1 基础概念 264

8.2 双屏异显 267

8.3 Presentation 269

8.4 屏幕移动 272

8.5 本章小结 279

第 9 章 性能优化与测试 280

9.1 性能优化介绍 280

9.2 App性能优化方法 281

9.2.1 包体积优化 282

9.2.2 界面渲染优化 283

9.2.3 内存优化 289

9.3 App性能测试方法 295

9.4 App性能分析工具 301

9.5 本章小结 304

本书特色

本文摘自《Android智能座舱开发:从源码到实践》,获出版社和作者授权发布。

Android智能座舱开发:从源码到实践------jd

相关推荐
No0d1es19 分钟前
电子学会青少年软件编程(C/C++)5级等级考试真题试卷(2024年6月)
c语言·c++·算法·青少年编程·电子学会·五级
AndrewHZ22 分钟前
【3D重建技术】如何基于遥感图像和DEM等数据进行城市级高精度三维重建?
图像处理·人工智能·深度学习·3d·dem·遥感图像·3d重建
飞哥数智坊29 分钟前
Coze实战第18讲:Coze+计划任务,我终于实现了企微资讯简报的定时推送
人工智能·coze·trae
Code_流苏1 小时前
AI热点周报(8.10~8.16):AI界“冰火两重天“,GPT-5陷入热议,DeepSeek R2模型训练受阻?
人工智能·gpt·gpt5·deepseek r2·ai热点·本周周报
赴3351 小时前
矿物分类案列 (一)六种方法对数据的填充
人工智能·python·机器学习·分类·数据挖掘·sklearn·矿物分类
大模型真好玩1 小时前
一文深度解析OpenAI近期发布系列大模型:意欲一统大模型江湖?
人工智能·python·mcp
双翌视觉1 小时前
工业视觉检测中的常见的四种打光方式
人工智能·计算机视觉·视觉检测
念念01071 小时前
基于MATLAB多智能体强化学习的出租车资源配置优化系统设计与实现
大数据·人工智能·matlab
nonono2 小时前
深度学习——常见的神经网络
人工智能·深度学习·神经网络
大阳1232 小时前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验