在应用程序处于后台时处理推送通知
Handling push notification while application is on background
我正在尝试在收到推送通知时启动程序或服务,但我想在应用程序 运行 处于后台时执行此操作。
我已经测试过它可以在前台与应用程序一起工作,但如果收到通知,还需要它在后台做一些工作。
我问了一圈,被告知无法完成,但我想在这里询问确认一下,在此先感谢。
是的,你可以做到这一点。您需要发送带有数据负载但没有通知负载的推送消息。
Check the doc
When your app is in the background, Android directs notification messages to the system tray
在 Android 上,当您的应用程序处于前台并且从您的服务器端使用 'notification' 和 'data' 键发送推送通知时,您的 FireBaseMessagingService 中的 OnMessageReceived 方法将是叫。在同样的情况下,当您的应用程序在后台时,不会调用 OnMessageReceive。
但是,当仅使用 'data' 键从您的服务器端发送推送通知时,即使您的应用 运行 在后台或前台,OnMessageReceive 也会被调用,但您必须自己处理通知在用户通知托盘中的插入
我正在尝试在收到推送通知时启动程序或服务,但我想在应用程序 运行 处于后台时执行此操作。
我已经测试过它可以在前台与应用程序一起工作,但如果收到通知,还需要它在后台做一些工作。
我问了一圈,被告知无法完成,但我想在这里询问确认一下,在此先感谢。
是的,你可以做到这一点。您需要发送带有数据负载但没有通知负载的推送消息。 Check the doc
When your app is in the background, Android directs notification messages to the system tray
在 Android 上,当您的应用程序处于前台并且从您的服务器端使用 'notification' 和 'data' 键发送推送通知时,您的 FireBaseMessagingService 中的 OnMessageReceived 方法将是叫。在同样的情况下,当您的应用程序在后台时,不会调用 OnMessageReceive。
但是,当仅使用 'data' 键从您的服务器端发送推送通知时,即使您的应用 运行 在后台或前台,OnMessageReceive 也会被调用,但您必须自己处理通知在用户通知托盘中的插入