使用FCM在Apple Safari中推送通知

时间:2017-08-07 20:19:11

标签: firebase push-notification safari apple-push-notifications firebase-cloud-messaging

我们在chrome和firefox中使用FCM实现了推送通知,并且工作正常,但Safari不支持对FCM强制要求的服务工作者。

有没有人处理过这类问题?有什么建议吗?

3 个答案:

答案 0 :(得分:5)

虽然服务工作者现在在Safari上工作,但他们还不够。

documentation说:

  

FCM JavaScript API可让您在支持Push API的浏览器中运行的网络应用中收到通知消息。这包括此support matrix中列出的浏览器版本。

Safari doesn't support web push,FCM依赖浏览器支持。这意味着Safari无法接收FCM通知。

答案 1 :(得分:1)

我不确定这个新的Safari和服务工作者的情况,但我尝试在我的iOS应用程序中实现FCM推送通知,并且必须首先体验到您需要APN(Apple-Push-Notification)证书。如果您正在使用Safari,我不确定是否需要这样做,但我可以想象Apple还希望它的推送通知首先被重定向到APN服务器。

答案 2 :(得分:0)

Safari仍不支持Web Push API,因此不支持Firebase Cloud Messaging服务。

Firebase支持以下浏览器: https://firebase.google.com/support/guides/environments_js-sdk#browsers

我建议使用.isSupported()代替其他解决方案。

if (firebase.messaging.isSupported())
    const messaging = firebase.messaging();
}

有关.isSupported()的详细信息,请参见documentation