Android:卸载服务时取消警报

时间:2011-07-25 22:25:15

标签: android service

我有一个运行独立服务的Android应用程序。现在,我在我的服务中设置了一些警报。我想在卸载我的应用程序时取消所有这些警报。

我尝试使用代码来取消OnDestroy()中的所有警报,但不保证会被调用。当应用程序未被取消时,是否有可靠的方法取消所有警报?

2 个答案:

答案 0 :(得分:3)

如果您的应用程序已卸载,则无法处理您设置的警报的PendingIntent。所以它们将被广播但是没有人会处理它们并且系统将它们删除。如果您担心应用程序的不同版本在重新安装后以不同方式处理警报,请为您的待处理意图添加额外版本。

答案 1 :(得分:1)

不幸的是,没有办法在卸载时运行代码。我想说onDestroy()可能会在卸载时被调用,因为如果服务当时正在运行,它将被最终确定。我不知道的一件事是操作系统是否会在卸载时自动取消与应用程序关联的警报。