Android 如何实现app安装完成后删除apk安装文件?
注意我是自己的app安装更新完成以后,不是监听第三方的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
注意我是自己的app安装更新完成以后,不是监听第三方的
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(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(),看看是不是你的,然后再去删除就可以了