今天在项目上遇到一个问题,允许第三方应用商店下载的apk安装到手机中,即使在取消勾选未知来源(不允许安装来自未知来源的应用)的情况下,也不会阻止安装。
实现这一功能,重新梳理代码,找出不能实现的原因,最后定位到从PackageInstaller中调用getCallingPackage()方法时,返回的值为null,弹出禁止安装提示框。
解决思路主要是通过查看Android官方API,查看源码。
1、首先查看getCallingPackage()方法的API接口。
在源码中,有下面介绍:
public String getCallingPackage ()
Added in
API level 1