13

有谁知道通过id获取通知的方法吗?如果它仍然显示在Android的状态栏中,我想要获得新通知时想要获取信息并将其添加到新通知中。谢谢你。

4

2 回答 2

17

NotificationManager 没有让您通过 ID 查找现有通知。如果您想更新通知,请发布新通知但使用相同的 ID。它将显示为新通知或使用该 ID 更新现有通知。

于 2014-05-23T14:34:03.267 回答
12

您可以从 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;
}
于 2017-11-17T07:35:48.357 回答