首页 > 解决方案 > Android 通知 - 收到错误的通知意图

问题描述

我有一个非常奇怪的通知情况(Android、Java)。

我创建了 3 个不同的通知(通过此代码):

    int id = getWeekNotificationId(notification);// different id than 25
    Intent notificationIntent = new Intent(context, ReminderNotifications.class);
    ...set intent data
    PendingIntent pendingIntent =
        PendingIntent.getBroadcast(
            context, id, notificationIntent, PendingIntent.FLAG_CANCEL_CURRENT);
    AlarmManager alarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
    if (Build.VERSION.SDK_INT >= 19) {
      alarm.setExact(AlarmManager.RTC_WAKEUP, 0, pendingIntent);
    } else {
      alarm.set(AlarmManager.RTC_WAKEUP, 0, pendingIntent);
    }

在此处输入图像描述

然后我创建了 id 为 25 的通知(它是代码的不同部分):

 public void scheduleNotification(int id, Context context) {
    Intent notificationIntent = new Intent(context, NotificationPublisher.class);
    ...set intent data
    PendingIntent pendingIntent =
        PendingIntent.getBroadcast(
            context, id, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
    AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
    alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, 0, pendingIntent);
  }

在此处输入图像描述

然后我取消最后一个通知(id 25):

   NotificationManagerCompat.from(context).cancel(25)

它没有正确显示在栏中。

在此处输入图像描述

这是我的问题:

我错过了什么?正确的ID分配或其他什么?

标签: androidandroid-notifications

解决方案


推荐阅读