我的Android应用中运行了一项服务。此服务是使用带有重复警报的AlarmManager启动的。当某个事件发生时,该服务发出一个广播,该广播在片段内接收。警报被取消(alarm.cancel(pendingIntent))。
到目前为止,这么好。但是如果活动/片段被破坏我该怎么办?我怎样才能取消服务?
答案 0 :(得分:1)
只需使用与alarm.cancel()
相同的pendingIntent
来调用此onDestroy
,即可在活动/片段的AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarm.cancel(pendingIntent)
方法中启动它:
cancel()
来自Intent
方法的描述:
删除匹配Intent
的所有闹钟。任何类型的警报({1}}与此filterEquals(Intent)
匹配)将被取消。