对报警感到困惑

时间:2017-11-17 17:35:19

标签: java android android-alarms

我想要的东西非常简单:每个中午都会触发警报

但作为一个新手,我遇到了设置这种警报的麻烦。实际上,它在大多数情况下都可以正常工作,但它也会在第一次活动开始时触发(例如在内存擦除之后)。在某种程度上,我理解它会检查过去的时间或者某些事情,这对我的编程知识很不合理。

我的日历

Calendar calendar = Calendar.getInstance();

calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 1);
calendar.set(Calendar.DAY_OF_YEAR, 1);
calendar.set(Calendar.MILLISECOND, 0);

setAlarm(calendar.getTimeInMillis());

setAlarm方法

private void setAlarm(long timeInMillis) {
// Check if Calendar is set in the past to prevent an immediate alarm */
if (mCalendar.getTimeInMillis() < System.currentTimeMillis()) {
//Add one day to the calendar (or whatever repeat interval you would like)
        mCalendar.add(Calendar.DAY_OF_YEAR, 1); }

AlarmManager alarmManager = (AlarmManager) 
getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, AlarmReceiver.class);
PendingIntent pi = PendingIntent.getBroadcast(this, 0, intent, 0);
alarmManager.setRepeating(AlarmManager.RTC, timeInMillis, AlarmManager.INTERVAL_DAY, pi);

}

我认为退伍军人的问题一定很明显,但我已经坚持了几个小时。非常感谢,如果你能帮助我的话。

1 个答案:

答案 0 :(得分:0)

搜索广播接收器。即使你关掉你的手机,它也会 有点重新加载你的pendingintent。

相关问题