如何显示推送通知消息?

How can I present push notification messages?

我正在开发一个 android 应用程序,它将接收推送通知。我想在应用程序布局中显示这些消息,而不是标准的 android 通知警报。可能吗 ?我怎样才能做到这一点?

Is it possible ?

这取决于您在 GCM 消息到达时是否有 "app layout"。您无法控制当时您的 UI 是否存在,因为这取决于用户和 OS。您也无法完全控制 GCM 消息传递的时间,因为它可能会受到可用 Internet 访问等因素的影响。

但是,对于 GCM,没有 UI 影响,除非 造成 UI 影响,无论是通过更新现有 activities/fragments 或提出 Notification。 GCM 消息不会触发 "standard android notification alert",除非您是引发 "alert".

的人

How can I achieve this?

GCM 消息通过 BroadcastReceiver 到达您应用的进程。您可以使用事件总线(例如,greenrobot 的 EventBus)来告知流程的其余部分消息已到达。如果您有一个可以使用该消息的 activity/fragment,它可以订阅事件总线并使用该消息。如果您的 BroadcastReceiver 确定没有人使用该消息,那么它可以实施某种回退行为,例如显示 Notification.