【发布时间】:2015-07-15 16:28:09
【问题描述】:
我正在制作演示 android 项目,我想在其中安排每天 8:00 的服务。我从我的启动器活动中调用此方法。每当我启动应用程序时,就会调用下面的方法,然后同时启动服务并显示通知。我只希望它应该以这样的方式安排,它应该在 8:00 执行,而不是每次我打开应用程序时执行。
public static void scheduleVerseNotificationService(Context mContext) {
AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(mContext, Notification.class);
PendingIntent pendingIntent = PendingIntent.getService(mContext, 0, intent, 0);
// Set the alarm to start at approximately 08:00 morning.
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 8);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);
}
谢谢
【问题讨论】:
标签: android android-service alarmmanager android-pendingintent