移动 Safari 推送通知

Posted

技术标签:

【中文标题】移动 Safari 推送通知【英文标题】:Mobile Safari Push Notifications 【发布时间】:2013-07-29 14:37:12 【问题描述】:

几个月前,我看到 Safari 7 允许推送通知,它似乎是一个非常有用的工具,除了我看到的每个示例都专注于桌面浏览,而不是移动设备。

Safari 推送通知可以在移动设备上运行吗?如果没有,是否有计划在不久的将来将其发布到 Safari 移动设备上?

【问题讨论】:

【参考方案1】:

我猜它只适用于 OS X,至少现在是这样。我收到了一封来自 Apple 的邮件:https://developer.apple.com/notifications/safari-push-notifications/。

我也在等待 ios 上基于 Web 的推送通知。但苹果似乎在 iOS 平台上奉行原生优先策略,赋予原生应用比移动 web 更多的特权。

【讨论】:

还是这样吗?有谁知道本地本地网络通知是否已经实现?在桌面上运行得很好,可惜不能让它转移 截至 2017 年 11 月,它似乎仍在“开发中” - webkit.org/status/#specification-service-workers【参考方案2】:

[已更新]Web 推送通知依赖于 WebKit (Mobile Safari) 中“支持”的“Service Workers”,但推送通知的状态尚不清楚。感谢Chris Talman 的更新

https://webkit.org/status/#specification-service-workers https://w3c.github.io/ServiceWorker/

【讨论】:

Service Worker 现在被标记为“支持”。问题是,Push API 和 Notifications API 都没有列出任何状态。你会认为他们至少会被列为“考虑中”。我怀疑这可能是因为开发人员不愿意支持仍在不断变化的 Web API。即便如此,这个过程几乎没有透明度,这真是一种耻辱。【参考方案3】:

因为这是 2 年前,我不再认为这是服务,但 Apple 没有计划扩展到移动设备,也没有任何在移动设备上推送通知的计划。我一直在苹果开发者网站上,发现没有办法在 IOS 上推送通知。但是,使用 Google Chrome 的用户可以使用 Push API (https://developers.google.com/web/updates/2015/03/push-notifications-on-the-open-web?hl=en) 在 android 上使用推送通知

【讨论】:

【参考方案4】:

目前无法向移动 Safari 发送推送通知,也没有计划在未来添加它。

不过,Android 上最新版本的 Chrome 开始通过 Push API 支持推送通知,因此 Apple 可能希望向 iOS 添加推送支持以避免被 Android 淘汰。

【讨论】:

以上是关于移动 Safari 推送通知的主要内容,如果未能解决你的问题,请参考以下文章

Safari 推送通知

Safari 推送通知不起作用

网站的 OSX 推送通知 - 从未调用过 Safari requestPermission 回调

不允许 Safari 推送通知

带有 FCM 推送通知的 Safari [重复]

使用 Node.js 创建 Safari 推送通知签名