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