Android 如何实现app安装完成后删除apk安装文件?

注意我是自己的app安装更新完成以后,不是监听第三方的

阅读 13.7k
5 个回答

是这样的,一般而言,第三方app安装的流程是首先用户或者其他应用触发sdcard上原始的apk文件进行安装,系统的安装流程会将apk 拷贝到/data/app目录下进行安装,并且这个路径可被所有应用查询。所谓的系统重启, 一部分工作就是重新安装/data/app目录下的所有应用。所以如果楼主想删除,基本上等于把自己的app卸载掉了。

当然,您可以监听app的安装,删除sdcard上原始的apk文件。

需要满足两点:
1.你的app需要安装完更新后被启动
2.你需要知道apk的路径

如果是自动更新的话,你自己肯定能控制文件下载位置。
那么既然能自己控制文件下载位置,那么去删除一个指定位置的文件也就很容易了。

不知道难点在哪里,也许是我遗漏了什么难点?

新版本都有首次启动的tag(用于引导页之类的),用它去控制是否是第一次安装的该版本。然后按照楼上的方法进行删除。

监听系统的应用安装或者更新广播
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<data android:scheme="package" />
最后一行是一定要加的, 然后从获得的Intent中提取出package信息,intent.getDataString(),看看是不是你的,然后再去删除就可以了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题