Alarmmanager或Alarmclock

时间:2012-08-23 05:34:22

标签: java android alarmmanager

我想编写一个具有两个独立重复警报的应用程序。似乎有两个类可以执行此操作:AlarmManagerAlarmClock。我已经测试了AlarmManager,但是当Android重新启动时,所有警报都被清除。

我应该使用哪个?

2 个答案:

答案 0 :(得分:2)

使用BroadcastReceiver处理Android操作系统启动广播并重新安排闹钟。

答案 1 :(得分:1)

AlarmManager服务允许您安排应用程序在将来的某个时间运行。当警报响起时,系统会广播已为其注册的Intent,如果目标应用程序尚未运行,则会自动启动它。

您可能会发现SO帖子有用Android AlarmManager

AlarmManager mgr=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
Intent i=new Intent(context, OnAlarmReceiver.class); 
PendingIntent pi=PendingIntent.getBroadcast(context, 0, i, 0);
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime(), PERIOD, pi);

AlarmClock提供程序包含一个Intent操作和附加组件,可用于启动Activity以在闹钟应用程序中设置新警报。