Объединенный PWA с уведомлениями FCM

У нас есть Angular 6 / Firebase 5.4.2 / AngularFire PWA, который активно использует Firebase для аутентификации, и FCM для уведомлений, которые мы пытаемся объединить в приложение, подходящее для размещения в магазинах приложений.

PWA работает нормально и получает уведомления FCM через сервис-воркера firebase-messaging-SW.js.

Мы попытались использовать как Cordova, так и Capacitor, чтобы объединить этот PWA в APK и IPA. Однако мы изо всех сил пытались заставить уведомления работать. Отладка проблем показала нам, что хотя сервис-воркеры регистрируются, когда мы запрашиваем разрешения, мы получаем ошибки:

ОШИБКА FirebaseError: Обмен сообщениями: этот браузер не поддерживает API, необходимые для использования Firebase SDK. (обмен сообщениями / неподдерживаемый браузер).

referenceError: Уведомление не определено. разрешение запроса на обмен сообщениями firebase

Любые рекомендации по этому поводу будут очень благодарны: если вы знаете образцы кода, которые показывают упаковку PWA при использовании уведомлений FCM, с которыми мы можем работать, это было бы идеально, или если вы знаете подходы, которые оказались успешными для других команд, тогда точка в сторону этих наборов инструментов также будет полезна!


person sbozzie    schedule 21.09.2018    source источник


Ответы (1)


Мы также изучаем методы упаковки PWA. С Capacitor наш опыт аналогичен: сервис-воркеры (и некоторые другие функции) не работают, и мы начинаем изучать собственные плагины / полифилы, чтобы заменить все функции, которые полагаются на сервис-воркеров, но это кажется довольно сложным.

Однако только сегодня я наткнулся на некоторые новости, которые могут помочь вам опубликовать PWA в Google Play: по-видимому, PWA теперь можно распространять через Google Play Store. Это достигается с помощью так называемой надежной веб-активности. Я еще не пробовал, но вы можете прочитать об этом здесь:

https://medium.com/@firt/google-play-store-now-open-for-progressive-web-apps-ec6f3c6ff3cc

Похоже, что в мире PWA все еще развивается!

person rokani    schedule 06.02.2019