Android 将接收到的多个解析推送通知折叠为一个
我想把多个折叠成一个。我查看了折叠键,并将其添加到有效负载中,如下所示:Android 将接收到的多个解析推送通知折叠为一个,android,parsing,push-notification,google-cloud-messaging,Android,Parsing,Push Notification,Google Cloud Messaging,我想把多个折叠成一个。我查看了折叠键,并将其添加到有效负载中,如下所示: Parse.Push.send({ where: somebody, collapse_key: "places_push", data: { alert: "alertText", type: "pushType" } }//... 但在我的Android应用程序中,多个推送仍然没有变成一个推送。如果我连续收到两个推送通知,我会在通知托盘中看到两张卡,而不是一张。
Parse.Push.send({
where: somebody,
collapse_key: "places_push",
data: {
alert: "alertText",
type: "pushType"
}
}//...
但在我的Android应用程序中,多个推送仍然没有变成一个推送。如果我连续收到两个推送通知,我会在通知托盘中看到两张卡,而不是一张。我是否应该以某种方式在应用程序端处理此问题,例如在ParsePushBroadcastReceiver的onPushOpen回调中,确保传递给NotificationManager对象的通知ID对于同一折叠键下的每条消息都保持不变。这样,您的通知将被更新,而不是在以前的通知之外显示新的通知。请参阅mNotificationManager.notify代码。我通过覆盖ParsePushBroadcastReceiver子类的getNotification方法并在其中使用累积文本构建通知(即,如果已经显示通知),解决了此问题,将上次推送收到的通知追加到以前通知的文本中。为了允许通知中包含多行内容,我按照以下方式设置了通知的样式:
NotificationCompat.InboxStyle inboxStyle =
new NotificationCompat.InboxStyle();
inboxStyle.setBigContentTitle("Details: ");
for(String s: notificationLines){
inboxStyle.addLine(s);
}
builder.setStyle(inboxStyle);
我希望这能有所帮助。您能分享完整的代码吗?非常感谢!