我正在使用网络应用程序。有新内容时,如何向iOS用户发送推送通知?
我正在使用网络应用程序。有新内容时,如何向iOS用户发送推送通知?
Answers:
更具体地说,为了使Web应用程序将推送通知发送到移动设备(例如iPhone),该移动设备必须已注册才能接收特定应用程序的推送通知。推送通知的注册是通过本机应用程序完成的,只能通过本机应用程序执行。将本机应用程序注册为推送通知后,它可以将授权令牌发送到服务器,该令牌可以与用于配置本机客户端的证书一起使用,以将推送通知发送到移动设备。
如另一个答案中所指定,一个选项是将Web应用程序“包装”在本机应用程序中。这意味着您将创建一个本机应用程序,该应用程序基本上向显示您的Web应用程序的用户呈现一个UIWebView(对于iPhone开发者)。尽管此功能与本机浏览器几乎具有相同的功能,但您将能够使用本机控件添加注册推送通知的功能。
查看Apple的推送通知文档对您很有帮助,因为它提供了有关iPhone上的推送消息功能的一些很好的信息。
请参阅Peter Hosey提供的以下链接:
不可以,只有本机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仍可以传递通知,因为它们是基于Service Workers(由浏览器注册的脚本,并且可以在以后的后台执行,即使在您的用户已离开您的网站)。
发送通知的过程涉及以下内容:
该推式API目前支持在台式机和Android的浏览器,火狐和歌剧。
您还可以使用APN 将推送通知发送到Apple / Safari桌面。这种方法是相似的,但是有很多复杂性(苹果开发者证书,推送包,与APN的低级TCP连接)。
如果您想自己实现推送通知,请从以下教程开始:
如果您正在寻找解决方案的下降,我建议您使用Pushpad,这是我构建的服务。
更新(2017年9月):苹果已经开始为WebKit开发服务工作者(状态)。由于服务人员是Web推送的基本技术,因此这是向前迈出的一大步。
Google Chrome现在支持W3C标准的推送通知。
如果您不想创建自己的本机应用程序,则可以使用pushover:https : //pushover.net/
ACTUALLY。这是全新的主意你..在OS X(小牛)的最新版本,CAN从网页到桌面发送推送通知。但是根据文档,不是iPhone:
Note: This document pertains to OS X only. Notifications for websites do not appear on iOS.
目前,苹果公司计划允许两种推送通知:OS X网站推送通知和本地通知。
这里明显的障碍是,这将无法在PC上运行,也不允许您执行android push通知。
此外,实际上您可以使用诸如Snow Leapord的旧版本,只要该网站处于打开状态且处于活动状态,就可以从该网站发送推送通知。新的Mavericks操作系统即使在站点未打开的情况下也将允许推送通知,前提是您已授予该站点发送推送通知的权限。
从苹果公司的嘴里:
在OS X v10.9和更高版本中,您可以使用Apple Push Notification Service(APN)将Web服务器上的OS X网站推送通知直接分发给OS X用户。不要与本地通知混淆,无论您的网站或他们的Web浏览器是否打开,推送通知都可以到达您的用户…
要将推送通知集成到您的网站中,您首先需要提供一个界面,该界面允许用户选择接收通知。如果用户同意,Safari会与您的网站联系,以称为推包的文件形式请求其凭据。推包还包含在整个OS X中使用的通知资产以及用于与您配置的Web服务进行通信的数据。如果推包有效,您将在设备上收到用户的唯一标识符,称为设备令牌。当您将此设备令牌和您的消息或有效负载的组合发送到APN时,用户会收到通知。
收到通知后,用户可以单击它,以在用户的默认浏览器中打开您选择的网页。
注意:如果需要有关APN的更新,请阅读“本地和推送通知编程指南”中的“ Apple Push Notification Service”一章。尽管该文档特定于iOS和OS X推送通知,但推送通知服务的范例仍然适用。
不,Web应用程序无法接收推送通知。您可以做的就是将您的Web应用程序包装到具有推送通知的本机应用程序中。
W3C于2010年成立了一个工作组来实施通知:http :
//www.w3.org/2010/web-notifications/
该工作组开发的API将这些机制公开给Web应用程序-以便创建例如基于Web的电子邮件客户端和即时消息客户端的Web开发人员可以将其Web应用程序行为与操作系统的通知功能更紧密地集成在一起。他们的最终用户。
最后,结果就像是一个恶作剧,因为只有在特定网站打开的情况下,它才有效:http : //alxgbsn.co.uk/notify.js/
我认为他们错过了实现添加推送URL的可能性,因此浏览器能够在后台(尤其是所有标签页)关闭的情况下在后台运行时请求通知。
您可以使用HTML5 Websocket引入自己的推送消息。从维基百科:
“对于客户端,WebSocket将在Firefox 4,Google Chrome 4,Opera 11和Safari 5以及iOS 4.2中的Safari的移动版本中实现。OS7中的BlackBerry Browser也支持WebSockets。”
为此,您需要自己的提供程序服务器将消息推送到客户端。
如果要使用APN(苹果推送通知)或C2DM(云到设备消息),则必须具有必须通过在线商店下载的本机应用程序。
Pushbullet是一个很好的选择。
但是,用户需要具有Pushbullet帐户和已安装的应用程序(iOS,Android)或已安装的插件(Chrome,Opera,Firefox和Windows)。
您可以通过创建Pushbullet应用程序来使用API,然后使用oAuth2将应用程序的用户连接到Pushbullet用户。
使用库会使它变得更容易,对于PHP,我可以推荐ivkos / Pushbullet-for-PHP。
查看Xtify Web Push通知。http://getreactor.xtify.com/此工具使您可以将内容推送到网页上并定位访问者,并根据浏览器DOM事件触发消息。它是专门为移动而设计的。