0

在我的应用程序中,我需要在每天上午 9 点、下午 3 点、晚上 8 点显示通知。怎么做...我应该使用警报管理器吗?我应该创建 3 个警报管理器还是一个可以为我做这些事情?最简单的方法是什么?有教程吗?谢谢

4

2 回答 2

1

我会使用 AlarmManager 设置早上 9 点的闹钟。然后,当 BroadcastReceiver 处理警报时,我会让它为下午 3 点设置一个新警报。当该 BroadcastReceiver 被触发时,将其设置为晚上 8 点,依此类推。

于 2012-10-16T19:10:22.953 回答
0

使用一个警报管理器。

像这样的东西(只是粗略的代码)

int duration = 0; // seconds
int now = getTwentyFourHrTime();
if (now == 9) { duration = 6*60*60; }
if (now == 15) { duration = 5 * 60 * 60 ; }
if (now == 20) { duration = 13 * 60 * 60 ; }

AlarmManager alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, MyAlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0);
 Calendar time = Calendar.getInstance();
time.setTimeInMillis(System.currentTimeMillis());
time.add(Calendar.SECOND, duration);
alarmMgr.set(AlarmManager.RTC_WAKEUP, time.getTimeInMillis(), pendingIntent);
于 2012-10-16T19:26:55.207 回答