如何处理android中每天触发的警报

时间:2010-01-21 15:56:13

标签: android broadcastreceiver alarm

我想在我的应用程序中设置一个警报,每天都会触发。根据文档,我必须设置一次性警报,并在接收警报信号的BroadcastReceiver中,重置第二天的警报。 这是正确的吗?

我的BroadcastReceiver处理好唤醒锁并启动一个发布此唤醒锁的服务。这里的一切都很好。

但是我有问题。在我的应用程序中,有一个复选框,在闹钟响起时进行检查。要知道我的闹钟是否已启动,我使用以下条件:

Intent intent = new Intent( context, AlarmReceiver.class );
boolean alarmUp = (
PendingIntent.getBroadcast( context, 0, intent, PendingIntent.FLAG_NO_CREATE) != null)

但这似乎不能很好地工作,是一个很好的方法来了解警报是否已启动?

提前致谢

1 个答案:

答案 0 :(得分:6)

对于问题的第一部分,您可以使用重复警报,或者在您正在进行任何一次火灾时安排新警报。无论哪种方式都有效。

您可能还需要设置接收ACTION_BOOT_COMPLETED的广播接收器,以便在手机重新启动时重新安排闹铃。

至于检查警报是否存在,带有FLAG_NO_CREATE的PendingIntent正是你如何做到的。