ReactJS - FCM 在 safari 浏览器中不起作用



我正在尝试在我的ReactJS应用程序中实现FCM推送通知。 它在chrome和Firefox浏览器中完美运行,但在Safari浏览器中面临问题。

Firebase 错误:消息传递:此浏览器不支持使用 Firebase SDK 所需的 API。(消息传递/不支持的浏览器(。

我还浏览了Firebase的文档,还发现它仅支持3个浏览器。

  • 火狐

  • 野生动物园

是否有任何方法可以在野生动物园浏览器中支持。

我在 Safari 中遇到错误,因为不支持 FCM。

Firebase 提供一种内置方法来检查天气 FCM 是否支持。

if(firebase.messaging.isSupported()) {
messaging = initializedFirebaseApp.messaging();
messaging.usePublicVapidKey(
"Key"
);
}

Safari 11.1 已经支持serviceWorker,但它仍然不支持 FCM Javascript API 也需要PushAPI

摘自 Firebase 文档 (https://firebase.google.com/docs/cloud-messaging/js/client(:

FCM JavaScript API 允许您在支持推送 API 的浏览器中运行的 Web 应用中接收通知消息。

以下是支持的浏览器列表: https://caniuse.com/#feat=push-api 指出 Safari 仍然不支持推送 API

来自 Firebase 文档:

FCM JavaScript API 允许您在提供 Service worker 支持的浏览器中运行的 Web 应用中接收通知消息。这包括以下浏览器:

铬: 50+

火狐: 44+

歌剧手机: 37+

似乎Safari(尚未(受支持。

初始化火力基础7.20.0+

import firebase from 'firebase/app'
import 'firebase/messaging'
const config = {
// download from firebase console
}
let messaging = null
if (firebase.messaging.isSupported()) {
firebase.initializeApp(config)
messaging = firebase.messaging()
} else {
console.log('no-support :(')
}

相关内容

  • 没有找到相关文章