Firebase云消息传递不适用于Chrome(iOS)

时间:2017-09-06 09:33:19

标签: ios google-chrome firebase firebase-cloud-messaging

我刚刚开始测试Firebase的网站推送通知。基本代码似乎在许多基于Android的浏览器(Chrome,Firefox ......)应用程序上运行良好,但不适用于安装在iOS上的那些应用程序,例如我的iPad或iPhone上的Chrome。我无法找到与此问题相关的任何信息。我错过了什么吗?

firebase.initializeApp(config);
const messaging = firebase.messaging();

messaging.requestPermission()
.then(function () {
    console.log('Notification permission granted.');
    // TODO(developer): Retrieve an Instance ID token for use with FCM.
    // ...
})
.catch(function (err) {
    console.log('Unable to get permission to notify.', err);
});

2 个答案:

答案 0 :(得分:8)

iOS上的Chrome基于与Safari相同的基本网络视图。由于该底层组件(尚未)不支持服务工作者,因此无法在iOS上将FCM推送通知传送到Chrome。

答案 1 :(得分:0)

如果在iOS浏览器上的网站上显示空白页,以供将来参考。 只需通过检查浏览器firebase.messaging.isSupported()

是否支持FCM即可将服务器工作程序包装在if语句中
if (firebase.messaging.isSupported()) {
    firebase.initializeApp({
        'messagingSenderId': 'your code here'
    });
    ...
}