点击捆绑通知不会触发PendingIntent

问题描述:

因此,在Nougat中,来自同一应用的多个通知会自动捆绑到一个组中。我在通知中设置了一些PendingIntent以及一些附加内容,如果特定的通知被点击,它会启动一个特定的活动(深层链接)。但是,如果我点击通知包(即不扩展组),我的应用程序就会像启动器一样启动 - 即它的意图是空的,没有额外的功能(它不是通过提供了PendingIntent)。点击捆绑通知不会触发PendingIntent

如何指定用户点击通知包时使用的意图?

我面临同样的问题,经过一番调查后,似乎无法设置PendingIntent在Android决定自动分组通知时使用。

该实现位于AOSP源中的NotificationManagerService.maybeAddAutobundleSummary()处。在这种情况下,系统始终会生成一个PendingIntent来启动启动器活动。

你可以做什么管理的分组和汇总通知自己,比如这里描述:http://blog.danlew.net/2017/02/07/correctly-handling-bundled-android-notifications/

另一种选择是使用NotificationManager.getActiveNotifications()当应用程序被启动,通过活动的通知迭代,然后决定什么要做的事情(例如,如果发现,处理未决的深层链接)。