apk 安装基本知识点和apk安装拦截
文章目录
- 前言 需求
- 参考资料
- 一、 修改文件及实现方案
- 三、源码分析
-
- 1、PackageInstaller 源码解析
- 2、PackageInstallerSession 源码讲解
- 声明周期状态
-
- MSG_ON_SESSION_SEALED (值:1)
- MSG_STREAM_VALIDATE_AND_COMMIT (值:2)
- MSG_INSTALL (值:3)
- MSG_ON_PACKAGE_INSTALLED (值:4)
- MSG_SESSION_VALIDATION_FAILURE (值:5)
- MSG_PRE_APPROVAL_REQUEST (值:6)
- 详细流程分析
-
- commit->dispatchSessionSealed ->MSG_ON_SESSION_SEALED
- MSG_ON_SESSION_SEALED ->handleSessionSealed->dispatchStreamValidateAndCommit->MSG_STREAM_VALIDATE_AND_COMMIT
- MSG_STREAM_VALIDATE_AND_COMMIT->handleStreamValidateAndCommit() ->MSG_INSTALL
- MSG_INSTALL ->handleInstall-> verify
- verify->verifyNonStaged->onVerificationComplete -> install->dispatchSessionFinished
- dispatchSessionFinished ->sendUpdateToRemoteStatusReceiver ->MSG_ON_PACKAGE_INSTALLED ->sendOnPackageInstalled
- 那么PackageInstallSession 到底和PMS是怎么关联的->installNonStaged
- 3 、InstallingSession 源码详解
- 4 、InstallPackageHelper 安装帮助类 源码解析
- 总结
前言 需求
本文基于RK3576 Android15 版本开发已验证
需求:应用安装拦截
- 默认所有的应用apk 都可以安装
- 默认所有的应用apk 都可不可安装
- 指定的包名应用可以安装,其它不可以安装
- 指定的签名应用可以安装,其它不可以安装。sha256 字符串
参考资料
Android13-包安装器PackageInstaller-之apk安装流程 安装包就是一个App流程分析
PMS安装apk之界面跳转 和PackageInstaller 包安装一个界面跳转分析
RK-Android11-PackageInstaller安装器自动安装功能实现 在PackageInstaller 包中定义界面和逻辑实现
Apk 静默安装实现 偏向于Framework 层 修改逻辑 或

订阅专栏 解锁全文
930

被折叠的 条评论
为什么被折叠?



