知识结构
graph LR
A[Android Framework 开发技术栈]
A --> B[系统架构]
B --> B1[应用层]
B --> B2[Framework 层]
B --> B3[Native 层]
B --> B4[HAL 硬件抽象层]
B --> B5[Linux Kernel]
A --> C[核心组件]
C --> C1[ActivityManager]
C --> C2[WindowManager]
C --> C3[PackageManager]
C --> C4[ResourceManager]
C --> C5[ContentProvider]
C --> C6[View System]
C --> C7[NotificationManager]
C --> C8[TelephonyManager]
A --> D[进程与通信]
D --> D1[Binder IPC]
D --> D2[AIDL]
D --> D3[ Zygote]
D --> D4[SystemServer]
D --> D5[Handler 机制]
D --> D6[ASHMEM 共享内存]
A --> E[运行时]
E --> E1[ART]
E --> E2[Dalvik]
E --> E3[JNI]
E --> E4[Native Libraries]
A --> F[服务与模块]
F --> F1[System Services]
F --> F2[PowerManager]
F --> F3[AudioFlinger]
F --> F4[SurfaceFlinger]
F --> F5[InputManager]
F --> F6[MediaFramework]
A --> G[硬件相关]
G --> G1[HAL 接口定义语言 HIDL]
G --> G2[Sensor Framework]
G --> G3[Camera HAL]
G --> G4[Audio HAL]
G --> G5[GPU/Graphics]
A --> H[工具与调试]
H --> H1[ADB]
H --> H2[Logcat]
H --> H3[Systrace]
H --> H4[Dumpsys]
H --> H5[Android Source Build]
A --> I[定制与优化]
I --> I1[ROM 定制]
I --> I2[Bootloader]
I --> I3[OTA 更新]
I --> I4[Security SELinux]
I --> I5[Performance Tuning]