Web应用程序如何向iOS设备发送推送通知?

我正在开发一个Web应用程序。 如何在有新内容时向iOS用户发送推送通知?


更具体地说,为了使web应用向移动设备(例如iPhone)发送推送通知,移动设备必须已经注册以接收针对特定应用的推送通知。 推送通知的注册是通过本机应用程序完成的,只能通过本机应用程序执行。 一旦本地应用程序注册推送通知,它就可以将授权令牌发送到服务器,该服务器可以与用于配置本地客户端的证书一起使用,以将推送通知发送到移动设备。

正如在另一个答案中指定的那样,一种选择是将您的Web应用程序“包装”在本机应用程序中。 这意味着您将创建一个本机应用程序,该应用程序基本上向显示您的Web应用程序的用户呈现UIWebView(用于iPhone开发)。 虽然这几乎与本地浏览器的功能相同,但您可以使用本机控件添加注册推送通知的功能。

如果您查看Apple的推送通知文档,这将对您有所帮助,因为它提供了关于如何在iPhone上推送消息功能的相当不错的信息。

请参阅Peter Hosey提供的这些链接:

  • https://support.apple.com/kb/HT201925
  • https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/APNSOverview.html

  • 不,只有原生iOS应用程序支持推送通知。

    更新:
    Mac OS X 10.9和Safari 7网站现在也可以发送推送通知,但这仍然不适用于iOS。 阅读网站的通知编程指南。 另请参阅WWDC 2013 Session 614。


    虽然iOS尚未支持 (从iOS 10开始),但网站可以使用Push API将推送通知发送到Firefox和Chrome(桌面/ Android)。

    Push API与旧版Web通知结合使用来显示消息。 优点是Push API允许即使用户没有浏览您的网站时也传递通知,因为它们建立在服务工作者(由服务器注册的脚本上,并且可以在稍后的时间后在后台执行你的用户已经离开你的网站)。

    发送通知的过程涉及以下内容:

  • 用户访问您的网站(必须通过HTTPS进行保护):您要求显示推送通知的权限,并注册服务人员(在收到推送通知时将执行的脚本)
  • 如果用户已授予权限,则可以读取应发送到服务器并存储的设备令牌(端点)
  • 现在您可以向用户发送通知:您的服务器向端点发送HTTP POST请求(这是一个包含设备令牌的URL)。 接收请求的服务器由浏览器制造商(例如Google,Mozilla)拥有:浏览器始终连接到它并可以读取传入的通知。
  • 当用户浏览器接收到通知时,执行负责管理事件的服务工作者,从服务器检索通知数据并向用户显示该通知
  • Chrome浏览器FirefoxOpera目前支持桌面和Android版本的Push API。

    您也可以使用APN将推送通知发送到Apple / Safari桌面。 这种方法是相似的,但有许多复杂性(苹果开发者证书,推送包,与APN的低级TCP连接)。

    如果您想自己实施推送通知,请从以下教程开始:

  • 推送API:推送通知在Open Web上
  • Apple推送通知系统:配置Safari推送通知
  • 如果你正在寻找解决方案,我会建议Pushpad,这是我建立的服务。

    更新 (2017年9月):Apple已开始为WebKit(状态)开发服务工作者。 由于服务人员是网络推送的基本技术,这是向前迈进的一大步。

    链接地址: http://www.djcxy.com/p/57417.html

    上一篇: How can a web application send push notifications to iOS devices?

    下一篇: Getting errors using APNS PHP