Android Notification在给定时间不会弹出

时间:2012-10-18 16:12:04

标签: android

我刚刚开始将我的iOS应用程序转换为Android。 但是我遇到了以下问题。

我创建了多个类,以便弹出警报。 但问题是警报每隔5/10秒而不是给定时间弹出。 我知道这与以下代码有关:

alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, SystemClock.elapsedRealtime() + 5000, 10000, pendingIntent);

但最奇怪的是,该代码上方的给定时间不会触发任何事情: (否则我可能只是删除了最后一行代码)

private void setRecurringAlarm(Context context) {
    Calendar updateTime = Calendar.getInstance();
    updateTime.set(Calendar.HOUR_OF_DAY, 17);
    updateTime.set(Calendar.MINUTE, 18);

    Intent open = new Intent(this, AlarmReceiver.class);
    open.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, open, PendingIntent.FLAG_CANCEL_CURRENT);
    AlarmManager alarmManager = (AlarmManager) getSystemService(MyApp.ALARM_SERVICE);
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, SystemClock.elapsedRealtime() + 5000, 10000, pendingIntent);

该代码有什么问题,因为闹钟不会在17:18弹出,而是每次在5或10秒后弹出。 我创建的用于显示通知的服务不会在17:18开始显示消息。 这与我的时区(阿姆斯特丹时间)有关吗?

1 个答案:

答案 0 :(得分:0)

我认为你为.setRepeating传递了错误的值。看看the documentation

在我看来,你说的是: 从现在起5秒后第一次广播,然后在重复之后每10秒播出一次