1

我想编写一个有两个独立的重复警报的应用程序。似乎有两个类可以做到这一点:AlarmManagerAlarmClock. 我已经测试过AlarmManager,但是当 Android 重新启动时,所有警报都会被清除。

我应该使用哪个?

4

2 回答 2

2

使用 BroadcastReceiver 处理 Android 操作系统启动广播并重新安排您的警报。

于 2012-08-23T05:40:55.020 回答
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 以在闹钟应用程序中设置新闹钟。

于 2012-08-23T05:47:27.667 回答