当程序安装/卸载时,会发出PACKAGE_ADDED/PACKAGE_REMOVED广播,按理只要应用程序监听这样的广播,就能在收到相应广播时触发相应处理(例如,添加/删除 桌面快捷方式)。事实验证,这个是完全可以实现的。
但是,如果是由应用程序进行这些广播的监听,同时,又卸载自身,那能否收到相应广播并触发相应处理呢?实验证明行不通。 自身已经被卸载了,无法自救!! 如果还有其他方法盼赐教,无限期待。
HL耐心研究了这个许久,还说一定要把它实现。后生可畏呢。
为客户服务就不要顶着一个技术至上的大帽子,踏踏实实做好每个细节。 :)
判定快捷方式已存在
通过发送广播给Launcher创建桌面快捷方式,Laucher收到该广播创建快捷方式后会有Toast提示 创建成功,如果该快捷方式已经存在,也会有Toast提示 已存在。若每次进入程序时都执行如下代码,就每次都有Toast提示出现,频繁地出现打扰了用户 。
所以,在决定是否执行以上代码之前就添加是否存在该快捷方式的判定 ,如果没有该快捷方式,就发出广播告诉Laucher创建快捷方式(会弹窗一次Toast),如果该快捷方式已经存在,则不需执行该代码去创建,当然也就不会出现Toast了。
判定是否存在该快捷方式,需要权限: