1.概述
在11.0定制化开发中,客户需求要实现应用卸载白名单功能,用来管理第三方app卸载功能,需要在白名单之中的应用可以卸载,其他的app不准卸载,实现一个管理第三方app卸载的功能,这需要从app卸载流程入手就可以实现功能,而PMS负责对app的安装和卸载功能管理所以从这里入手
2.app应用卸载白名单的核心代码
frameworks/base/core/java/android/content/pm/IPackageManager.aidl
frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java
3.app应用卸载白名单的核心代码功能分析
实现app卸载白名单实现思路
1 . IPackageManager.aidl增加卸载白名单接口
2. 找到系统安卸载 apk 核心代码,查询 app 包名列表,实施拦截
安装卸载的核心代码都在 PackageManagerService.java 中
3.1IPackageManager.aidl增加卸载app白名单接口
diff --git a/frameworks/base/core/java/android/content/pm/IPackageManager.aidl b/frameworks/base/core/java/android/content/pm/IPackageManager.aidl
--