如何在前台发送推送通知



我从node.js服务器发送这样的推送通知:

const message = {
android: {
ttl: 3600 * 1000,
notification: {
icon: 'stock_ticker_update',
color: '#f45342',
sound: "notify"
}
},
token: user.deviceToken,
...notification
};
return await adminCli.messaging().send(message);

对于某些推送消息,我希望它仅在前台接收,而不是在应用程序在后台运行时接收...... 因此,对于我在后台收到的特定消息,我想忽略它...有可能实现吗?

根据文档:

onMessageReceived 是为大多数消息类型提供的,但以下情况除外:

  • 应用在后台运行时发送的通知消息。在这种情况下,通知将传递到设备的系统托盘。默认情况下,用户点击通知会打开应用启动器。
  • 具有通知和数据有效负载(后台和前台(的消息。在这种情况下,通知将传递到设备的系统托盘,并且数据有效负载将在启动器活动意图的额外内容中传递。

因此,如果您使用的是通知消息,则无法控制应用程序在后台时的行为,因为它将由系统托盘处理。

我建议您使用 DataPlayload 消息,并在onMessageReceived方法中决定显示通知或忽略它。

您可以在此处阅读更多内容

编辑

如果不清楚,我的意思是在服务器中创建消息时使用仅数据消息而不是使用通知

相关内容

  • 没有找到相关文章

最新更新