Ты правильно прочитал. В течение многих лет самая востребованная функция может, наконец, появиться в iOS и iPadOS: Web Push и Web Notifications. Но есть отличные новости:
- В настоящее время это эксперимент с отключенным по умолчанию
- API есть, но они не работают ;)
Есть два новых эксперимента на iPadOS и iOS 15.4: «Встроенные веб-уведомления» и «Push API», оба по умолчанию отключены в последней бета-версии.
Функция отключена по умолчанию в последней бета-версии, которая может сказать, что она не будет отправлена сейчас, и нам, возможно, придется подождать пару месяцев для iOS 16 или более поздней версии.
API есть, но не работает
Однако я не смог заставить это работать. Проблема, похоже, связана с разрешениями, так как разрешения всегда отклоняются без просмотра какого-либо запроса диалогового окна разрешений, независимо от того, происходит ли он после действия пользователя или нет.
В последней версии технологии Safari для macOS работает диалоговое окно уведомлений, и даже когда это разрешение предоставлено, вы не можете получить объект подписки Push из Safari, «Разрешение Push было отклонено» - единственное сообщение, которое я мог получить. Это могут быть по нескольким причинам:
- Они заканчивают работу над API, и во время последующих бета-версий, наконец, появится диалоговое окно разрешений на iOS.
- Есть некоторые пользовательские требования, о которых мы еще не знаем, что позволит API, например, вовлеченность сайта или что-то в этом роде.
- Существуют некоторые требования к использованию API, основанные на источнике, которые мы еще не знаем. Возможно, нам придется зарегистрировать источник в программе Apple Developer Program, аналогичной программе Safari Push Notification для macOS. В этом случае разработчику придется платить ежегодную плату за программу Apple Developer Program за отправку push-сообщений своим веб-пользователям.
Вы можете увидеть много онлайн-тестеров Web Push, таких как Push Notification Demo, обнаруживающих поддержку, но разрешение всегда отказано.
Разрешение всегда отказано без какого-либо диалогового окна разрешений пользовательского интерфейса
API отображается как в Safari, так и в установленном PWA в последней бета-версии. Тем не менее, я не знаю, будет ли Web Push доступен для установленных PWA или нет, так как они используют изолированное хранилище от Safari, и могут возникнуть некоторые проблемы с реализацией.
Нам придется подождать, пока кто-то из Apple что-то скажет об этом :(