当用户删除事件时,我该如何取消警报?

7

我正在将一个事件添加到我的日程列表中,并且已经为该事件设置了闹钟。我必须在事件结束前的五分钟内每一分钟重复响铃。在以下情况下,我必须删除或取消特定事件的闹钟。

  1. 当我从我的日程表中删除事件时。
  2. 事件已放置在日程表中,但我不想为该事件设置闹钟。

我正在使用SQLite数据库、Alarm Manager和Services等概念。 我对如何使用Services和PendingIntent感到有些困惑。因此,请建议我正确的方法以满足我的要求。

1个回答

8
您需要使用AlarmManager中的cancel(...)方法,使用与设置闹钟时相同的PendingIntent。例如:
this.getAlarmManager().cancel(mAlarmPendingIntent);

(this指的是您要取消警报的ActivityService。)

这是API的链接

创建PendingIntent:

mAlarmPendingIntent = PendingIntent.getActivity(this, requestCode, intent, flags);

这里是 PendingIntent 的 API 文档链接


4
对于特定事件,当我从我的日程列表中删除事件时,如何获取挂起意图? - SBK

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接