前面的文章我们介绍了系统应用解析流程和通过 PackageInstaller.apk安装应用程序的相关流程,这一篇我们来分析使用 ADB 命令来实现 APK 安装流程。
一、ADB安装命令
ADB命令使用
adb install [选项] [APK绝对路径]
常见选项如下:
-r:覆盖安装,保存原有数据;
-t:允许安装测试安装包;
-d:允许安装比当前版本低的安装包;
-g:安装并授予所有运行时权限;
-l:锁定该应用程序;
-s:安装到 SD 卡;
--fastdeploy:
快速部署模式,仅更新 APK 更改过的部分。
安装流程
对于使用 ADB 命令安装应用程序,主要可以总结为下面三步:
- ADB 命令识别解析,并转化为 pm 命令。
- pm 命令识别解析,并通过 Binder 调用到 PMS。
- PMS 对 pm 命令进行处理。
下面我们对以上三个步骤分别进行详细介绍。
二、ADB命令识别解析
adb 命令对应的入口函数定义在 m