FCM推送通知仅适用于Android,但只有消息同时发送到Android和IOS



在我们的后端,我们只通过FCM(分离(引发创建推送通知和消息的事件。

一条"消息"(仅限数据(供客户和与订单相关的客户在屏幕等上更新,一条推送通知供客户使用。

问题是,android同时接收推送和消息,但IOS只接收消息,而不接收推送通知。

当我通过.NET后端的测试直接向Iphone设备发送推送通知时(它实现了Firebase消息服务,也使用了引发的相同事件(,Iphone装置会收到推送通知。

我们正在使用应用程序分发,该应用程序是用react native构建的。我们的后端.NET,使用firebase管理SDK。

我们注意到的是:

  • 卸载并再次安装应用程序会使通知工作,但只有一次,它就会停止工作。

  • 当客户应用程序与"触发"订单更新的其他应用程序在同一设备上时(如果订单更新(,则会收到客户应用程序中同一设备的通知。

代码:

Message message = new Message
{
Token = token,
Notification = new Notification
{
Title = title,
Body = body
},
Android = new AndroidConfig
{
Data = data as IReadOnlyDictionary<string, string>,
Priority = Priority.High,
TimeToLive = TimeSpan.FromMinutes(ttl),
Notification = new AndroidNotification
{
ChannelId = "default"
}
},
Apns = new ApnsConfig
{
Aps = new Aps
{
ContentAvailable = true,
CustomData = dataToStringObject
}
}

您需要在IOS的json中发送通知密钥。则只有IOS设备将接收该通知。

当您设置"ContentAvailable:true;在没有alert字段的情况下,fcm在ios中发送静默推送。

后台通知标志。要执行静默后台更新,请指定值1,并且不要在有效负载中包含警报、徽章或声音键。

https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification

最新更新