【问题标题】:Firebase Messaging on IOS web browsersIOS Web 浏览器上的 Firebase 消息传递
【发布时间】:2023-04-01 09:24:01
【问题描述】:

Firebase 消息推送通知可以在桌面和 Android 网络浏览器上正常工作,但是当我在 IOS 设备上对其进行测试时,我使用的浏览器并不重要,通知和 .getToken() 方法不起作用。我的 JavaScript 代码是这样的:

if ('Notification' in window) {
    var messaging = firebase.messaging();
    if (Notification.permission === 'granted') {
        subscribe();
    }

    $('#notify').on('click', function () {
        subscribe();
    });
}

function subscribe() {
    // запрашиваем разрешение на получение уведомлений
    messaging.requestPermission()
        .then(function () {
            // получаем ID устройства
            return messaging.getToken()
                .then(function (currentToken) {
                    console.log(currentToken);

                    if (currentToken) {
                        sendTokenToServer(currentToken);
                    } else {
                        console.warn('Не удалось получить токен.');
                        setTokenSentToServer(false);
                    }
                })
                .catch(function (err) {
                    console.warn('При получении токена произошла ошибка.', err);
                    setTokenSentToServer(false);
                });
        })
        .catch(function (err) {
            console.warn('Не удалось получить разрешение на показ уведомлений.', err);
        });

【问题讨论】:

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


    【解决方案1】:

    iOS 上的所有浏览器本质上都是 WebKit(Safari 中使用的浏览器引擎)的包装器,因此它们从那里继承了大部分功能和限制。不幸的是,Safari 仍然不支持 Firebase 云消息传递所需的 Web Push API。

    另见:

    【讨论】:

      猜你喜欢
      • 2019-05-17
      • 1970-01-01
      • 2013-12-27
      • 2020-10-21
      • 2019-07-12
      • 1970-01-01
      • 2020-07-10
      • 1970-01-01
      • 2016-11-05
      相关资源
      最近更新 更多