65

我的目标是在 Chrome 或 Firefox 中从当前未在浏览器中打开的网络应用程序(我们称之为 X)发送Gmail 样式的桌面通知,而无需用户安装应用程序或扩展程序。如果用户需要授予从 X 接收通知的权限是可以的,如果需要打开浏览器才能显示通知也可以,只要 X 不需要在浏览器中打开即可。不需要打开任何浏览器窗口的解决方案也可以使用。

我只是花了一天时间研究这个,到目前为止,我我已经学会了:

  • 自 OSX Mavericks 以来,已经可以通过Safari Push Notifications在 Safari 7+ 中执行此操作。
  • Web Notifications API在Chrome/Firefox 中工作,但需要用户的浏览器对 X 开放。
  • Twitter发送类似的网络通知,无需先征求用户许可,但要求用户的浏览器对 Twitter 开放。
  • 有很多关于可能的Growl实现的参考,但据我所知,所有这些都需要用户安装 Growl 和/或支持 Growl 的应用程序才能工作。

我上面的任何陈述都可能是错误的——我很想听听!- 我也愿意接受任何其他解决方案。有任何想法吗?

谢谢阅读。

4

2 回答 2

83

即使您的网页未处于活动状态,您也可以发送推送通知,使用Service Workers用于服务工作者的 Notification API和用于服务器启动通知(或计划通知)的推送 API 。

截至 2016 年 6 月,Chrome、Firefox 和 Opera 支持 Service Worker。在https://jakearchibald.github.io/isserviceworkerready/查看状态

有关相关讨论、实施状态和规范,请参见以下链接。

于 2014-12-02T18:12:50.543 回答
0

您可以使用 W3C Push API完成您正在寻找的事情。

如果您想从头开始构建所有内容,我建议您开始阅读Google 的本教程。它适用于 Chrome,但 Firefox 的工作方式非常相似

然而,工作量很大,而且“标准”仍在不断发展:我建议您使用Pushpad之类的服务(我是创始人)。

于 2016-03-21T11:28:14.877 回答