在Chrome或Firefox中从封闭的networking应用程序发送桌面通知?
我的目标是通过Chrome或Firefox中的Web应用程序(我们称之为X)在浏览器中发送Gmail式的桌面通知 ,而无需用户安装应用程序或扩展程序。 如果用户需要授予接收来自X的通知的权限,那么可以,只要浏览器不需要打开X,浏览器需要打开通知就可以了。 不需要任何浏览器窗口的解决scheme也可以工作。
我只是花了这一天的时间,到目前为止,我认为我已经了解到:
- 自OSX Mavericks以来,通过Safari推送通知可以在Safari 7+中执行此操作。
- Web Notifications API适用于Chrome / Firefox,但要求用户的浏览器对X开放。
- Twitter发送类似的networking通知,而不要求用户先获得许可,但要求用户的浏览器对Twitter开放。
- 有很多关于可能的Growl实现的参考,但据我所知,所有这些都需要用户安装Growl和/或支持Growl的应用程序才能工作。
我上面的任何一个陈述都可能是错误的 – 我很乐意听到它! 我也愿意接受任何其他解决scheme。 有任何想法吗?
谢谢阅读。
即使您的网页不是使用服务工作者 , 服务工作者的通知API和服务器发起的通知(或预定通知 )的推送API ,也可以发送推送通知。
截至2016年6月,Chrome,Firefox和Opera均支持服务人员。 查看https://jakearchibald.github.io/isserviceworkerready/上的状态;
请参阅以下链接进行相关讨论,实施情况和规格。
- 从Chrome 40 , Firefox 33和Opera 24开始,服务工作人员默认启用。请参阅HTML5Rocks教程和MDN 。
- 推送通知: Chrome 42 + , Firefox 44+
您可以使用W3C 推送API完成您正在寻找的内容。
如果你想从头开始构build所有东西,我build议开始阅读Google的这篇教程 。 它适用于Chrome,但是Firefox的工作方式非常相似 。
然而,这是一个很大的工作,“标准”仍在不断发展:我build议你使用像Pushpad这样的服务。
您也在我们的支持地址向咆哮询问了我们。 我会尽我所知地回答。 然而,你想要的是本质上桌面推送通知。 即使在iOS上,您也需要安装应用程序才能为该应用程序推送通知。
底线是,你想要的东西似乎几乎是一个疯狂的追逐。 你不需要应用程序,也不需要浏览器选项卡,但是你希望能够随机侵入用户的个人空间。 这似乎不正确。 至less与咆哮,使用电脑的人可以closures你,如果他们发现你的通知烦人。 通知中心(NC)在更多的OS X安装中也是如此。
Firefox现在有自己的通知。 我不知道他们是如何工作的,因为我停止在OS X上使用Firefox。 Chrome也有通知。 但据我所知,你需要在那里打开标签,所以我猜这也是FF做的。
从本质上讲,作为一个用户,我真的认为这是一个可怕的经验。 你有一个networking应用程序,它应该是一个Web应用程序。 这不是一个桌面应用程序。 我并不是说Web应用程序是一个Web应用程序的好坏,但基本上你是想要压下一个用户而没有隐含的许可,这对我来说看起来并不完全正确。
我不知道有任何方式发送至less某种types的应用程序运行的通知来做到这一点。 无论是咆哮还是NC守护进程或其他任何事情。 从根本上说,我不认为你想要做什么是可能的。 我当然会很高兴当然错了,但我不认为我在这里。 对于那个很抱歉。
也就是说,通过当前的框架,您可以通过Growl支持一个小应用程序。 如果最终用户没有安装Growl,则会select使用NC进行显示。 如果它是一个较老的操作系统,它会使用雾,你在电子邮件中提到我们的支持团队。
我希望这会有所帮助,或者至less让你有所需要继续前进。 🙂