【发布时间】:2014-11-03 21:29:21
【问题描述】:
我正在开发一个应用程序,它必须显示一些通知,并且必须每天两次下载一些数据,所以我创建了一个服务来启动我的通知和一个 BroadcastReceiver,它应该(取决于时间)运行我的NotificationService,后来还有我的DownloadService。
我现在的问题是,我创建的 AlarmManager-alarm 应该每小时调用一次(如果少或多 1 或 2 分钟并不重要),它会执行大约 3 到 4 小时,但随后它会随机运行,并且还会多次运行例如在 7 点到 8 点之间。
我不知道问题出在哪里,所以这是我的代码:
活动:
Intent myIntent = new Intent(OverviewActivity.this, Receiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(OverviewActivity.this, 0, myIntent, 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, notifCal.getTimeInMillis(), AlarmManager.INTERVAL_HOUR, pendingIntent);
接收者:
public class Receiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent arg1) {
Intent notificationService = new Intent(context, NotificationService.class);
context.startService(notificationService);<br/>
}
}
提前致谢, momob114
【问题讨论】:
标签: java android alarmmanager