实现的分析
在窗口中点击一个APK时,触发单击事件,PackageInstaller接收系统服务PackageManagerService传来的intent信息,传来的Intent信息中有APK的一些参数。实现的关键是区分一般APK和特定APK。
文件列表大概如下:
InstallAppProgress.java
PackageInstallerActivity.java
+PackageInstallerActivityHide.java
PackageUtil.java
UninstallAppProgress.java
UninstallerActivity.java
+UninstallerActivityHide.java
具体实现
注意这里的两点:
内容如下:
2 实现PakkageInstallActivityHide.java,UninstallerActivityHide.java。 只需把PakkageInstallActivity.java修改去掉dialog和对话框。
3 安装程序调用者发一个上面定义的intent即可。如下例子,静默安装/sdcard/hello.apk
卸载的方法类似。
4 注意,这个方法需要PackageInstall这个apk必须与系统一起编译。这个apk在/system/app/目录下面;android.intent.action.VIEW.HIDE 这个静默安装的接口需要开放给第三方。