📦 PackageManager 安装流程 · 源码解析
📚 30 章节 · 从入门到内核
🎯 风格 · 易懂色系
v2.0
01
PackageManager 概述
是什么
核心职责
系统位置
02
安装流程总览
完整链路图
请求→就绪
03
核心类解析
PackageManagerService
Installer
Session
04
安装入口
PackageInstaller
创建与初始化
05
Session 创建
createSession()
逐行分析
06
Session 写入
write()
stage 目录
07
Session 提交
commit()
内部机制
08
安装验证
PackageManagerService
验证流程
09
权限检查
安装权限校验
逻辑
10
安装准备
preparePackage()
深度解析
11
安装执行
installPackage()
核心逻辑
12
dex 优化
dex2oat
触发时机与流程
13
原生库处理
NativeLibraryHelper
工作机制
14
签名校验
PackageSignatures
验证过程
15
数据目录创建
app 数据目录
权限设置
16
AndroidManifest 解析
PackageParser
解析流程
17
四大组件注册
Activity/Service
Receiver/Provider
18
权限授予
运行时权限
授予时机与逻辑
19
安装完成
installPackageLI()
收尾工作
20
广播通知
ACTION_PACKAGE_ADDED
发送机制
21
桌面图标
Launcher 图标
触发流程
22
安装失败处理
常见错误码
异常处理逻辑
23
静默安装
adb install
系统静默安装区别
24
多用户安装
多用户环境
安装逻辑
25
安装优化
增量安装
流式安装原理
26
安装回滚
失败回滚机制
原子性
27
性能分析
性能瓶颈
优化方向
28
实战调试
日志跟踪
断点调试
29
常见问题
空间不足
签名冲突
案例分析
30
总结与展望
未来演进方向
PackageManager