关闭应用程序时,仅使用数据有效负载不会收到任何通知,并且不会触发onMessageReceive
方法。
在下面的图像中显示数据有效载荷 click here to view parameter
且响应为click here to view response
响应成功1,但在Redmi电话中未收到任何通知。
答案 0 :(得分:2)
为所有设备支持Fire-base推送通知就像一个迷宫。 推送通知有3种情况
FirebaseMessagingService
的{{1}}方法)onMessageReceived
,但Firebase服务将其消息推送到设备的通知托盘)FirebaseMessagingService
firebase服务推送将其消息推送到设备的通知托盘)注意:当您从后台堆栈中滑出时,某些中文设备(如小米,华硕,华为等)会强制停止您的应用程序,从而导致该服务被终止。因此,firebase服务无法运行,并且无法将其通知推送到通知托盘。
在小米-安全->权限->自动启动,然后选中您的应用。启用此功能意味着应用程序的任何服务始终在后台运行。然后,您每次都会从您的应用程序收到各种通知。
如果您想进一步了解,Check that 并且如果您想从应用程序转到特定设备的安全性页面,请check this。
答案 1 :(得分:1)
发送数据消息并使用onMessageReceived
功能手动显示通知。
答案 2 :(得分:0)
当您在JSON中省略priority
字段时,默认设置为正常,这意味着Firebase将在适当的时候向您发送推送。
通常,当您的应用关闭时,与前台相比,接收消息要花费更多的时间。
因此,如果您要进行测试,则可以使用"priority":"high"
更快地完成工作。
但是请记住删除该字段,因为该字段对于最终用户而言会消耗大量电池
要考虑的另一件事是,在某些设备(例如华为)上,如果可以在电源设置下进行操作,则必须使该应用程序受信任才能使用更多电源
更新
发送对令牌的推送有时无法正常工作(因为令牌在开发期间会快速更改),并且每次刷新时都很难验证令牌。
因此,每次测试推送时,我宁愿使用主题/程序包作为"to"
参数。
如果您为应用订阅了某个主题,则可以使用仪表板检查工作伙伴,该仪表板会提示您应用已订阅的所有主题。