Firebase云消息传递无法在Chrome(iOS)上运行

Glo*_*ria 2 google-chrome ios 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);
});
Run Code Online (Sandbox Code Playgroud)

Fra*_*len 8

iOS上的Chrome基于与Safari相同的基本Web视图.由于该底层组件(尚未)不支持服务工作者,因此无法在iOS上向Chrome提供FCM推送通知.


Nad*_*lta 5

如果您在 iOS 浏览器上的网站上出现空白页面,以供将来参考。只需通过检查该浏览器是否支持 FCM 将您的服务器工作者包装在 if 语句中firebase.messaging.isSupported()

if (firebase.messaging.isSupported()) {
    firebase.initializeApp({
        'messagingSenderId': 'your code here'
    });
    ...
}
Run Code Online (Sandbox Code Playgroud)