notificationManager通过Id获取通知

时间:2014-05-23 13:58:49

标签: android notificationmanager

任何人都知道通过ID获取通知的方式吗?如果仍然在Android的状态栏中显示新通知,我想要获取信息并将其添加到新通知中,我想要它。谢谢。

2 个答案:

答案 0 :(得分:13)

NotificationManager没有为您提供按ID查找现有通知的方法。如果要更新通知,请发布新通知但使用相同的ID。它会将其显示为新的或使用该ID更新现有通知。

答案 1 :(得分:5)

您可以从NotificationManager获取活动通知列表。

@RequiresApi(api = Build.VERSION_CODES.M)
public Notification getActiveNotification(int notificationId) {
    NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    StatusBarNotification[] barNotifications = notificationManager.getActiveNotifications();
    for(StatusBarNotification notification: barNotifications) {
        if (notification.getId() == notificationId) {
            return notification.getNotification();
        }
    }
    return null;
}