我想编写一个具有两个独立重复警报的应用程序。似乎有两个类可以执行此操作:AlarmManager
和AlarmClock
。我已经测试了AlarmManager
,但是当Android重新启动时,所有警报都被清除。
我应该使用哪个?
答案 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以在闹钟应用程序中设置新警报。