6

Google Cloud Messaging (GCM) 是一项服务,使开发人员能够将数据从服务器发送到 Android 应用程序或 Chrome 应用程序和扩展程序。

我正在开发一个 chrome 和一个 firefox 扩展/附加组件。我正在使用 Firefox 扩展的 Web 扩展 API。

现在,Web 扩展 API 还不支持 chrome.gcm.* API。本质上,Firefox 扩展无法与 GCM 对话。

有没有像 GCM 这样的火狐扩展可以与之交谈的东西?Firefox 提供的东西就像 Google 为其浏览器 Chrome 提供的 GCM 一样?如果没有,有人可以解释如何在 Firefox 扩展中实现这一点吗?

更新:即使对于网络应用程序,Firefox 也不使用类似于 GCM 的东西。他们使用服务人员。Firefox 浏览器扩展可以与服务工作者交互吗?

4

1 回答 1

11

Firefox 扩展目前不能直接使用服务工作者(根据在 Firefox 中从事服务工作者支持工作的实施者的说法)。

有没有像 GCM 这样的火狐扩展可以与之交谈的东西?Firefox 提供的东西就像 Google 为其浏览器 Chrome 提供的 GCM 一样?

是的,有一个相当于 GCM 的 Firefox。Firefox 用户访问的所有接收推送通知的 Web 应用程序都从dom.push.serverURL用户偏好指定的服务器获取它们。如果您签dom.push.serverURLabout:config,您会看到wss://push.services.mozilla.com/,它是Mozilla 推送服务— 本质上是 Mozilla 的 GCM 等价物。

它的后端运行AutoPush,这是一个基于 Python 的开源 Push Server 软件项目,它的客户端(如问题中所述)通过服务工作者暴露给 Web 应用程序。

因此,虽然 Firefox 扩展可以通过另一种方式与 Mozilla Push Service 连接,但唯一公开记录的方式是通过依赖于服务工作者的标准 Web Push API,该 API 尚不能在 Firefox 扩展中使用。

于 2016-02-01T15:09:21.430 回答