我已经实现了这个推送通知。
我尝试推送第一条消息,它可以工作。之后我更改消息并再次推送,但内容无法进入应用程序。它仍然收到第一条消息。例如,第一条消息是“ABC”。第二条消息是“DEF”,当我在应用程序中单击通知时,消息仍然显示“ABC”而不是“DEF”。如果我手动运行该应用程序,然后我推送消息“DEF”,它确实会收到“DEF”。
当用户点击通知直接跳转到应用程序而不是从头手动运行应用程序时,如何使应用程序始终接受最新消息?
我已经实现了这个推送通知。
我尝试推送第一条消息,它可以工作。之后我更改消息并再次推送,但内容无法进入应用程序。它仍然收到第一条消息。例如,第一条消息是“ABC”。第二条消息是“DEF”,当我在应用程序中单击通知时,消息仍然显示“ABC”而不是“DEF”。如果我手动运行该应用程序,然后我推送消息“DEF”,它确实会收到“DEF”。
当用户点击通知直接跳转到应用程序而不是从头手动运行应用程序时,如何使应用程序始终接受最新消息?
只需传入一个像 intent() 这样的空意图并在通知标志设置中使用此标志: notification.flags |= Notification.FLAG_AUTO_CANCEL;
我认为您可以将标志FLAG_UPDATE_CURRENT添加到通知PendingIntent以将现有 Pending Intent 中的额外内容替换为新 Intent。
如果你想删除旧的 PendingIntent 并用新的替换它,还有标志FLAG_CANCEL_CURRENT 。