我想将多个Parse Push notifications合并为一个。我查看collapse_key
并将其添加到有效负载中,如下所示:
Parse.Push.send({
where: somebody,
collapse_key: "places_push",
data: {
alert: "alertText",
type: "pushType"
}
}//...
但是在我的Android应用程序中,多次推送仍未折叠成一个(即,如果我连续收到2个推送通知,我会在通知托盘中看到两张卡而不是1张)。我应该以某种方式在应用程序端处理此问题(例如 ParsePushBroadcastReceiver 的 onPushOpen 回调)
答案 0 :(得分:0)
确保传递给NotificationManager对象的通知ID对于同一折叠键下的每条消息保持不变。通过这种方式,您的通知将会更新(而不是之前显示的新通知)。请参阅mNotificationManager.notify
代码here。
答案 1 :(得分:0)
我通过覆盖 ParsePushBroadcastReceiver 子类的 getNotification()方法解决了这个问题,并在那里用累积文本构建通知(即,是否已经显示通知,附上最后一次推送收到的那些先前通知的文本。为了允许多行进入通知,我按以下方式设置通知的样式:
NotificationCompat.InboxStyle inboxStyle =
new NotificationCompat.InboxStyle();
inboxStyle.setBigContentTitle("Details: ");
for(String s: notificationLines){
inboxStyle.addLine(s);
}
builder.setStyle(inboxStyle);
我希望这会有所帮助。