首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >未收到chrome extension离线gcm消息

未收到chrome extension离线gcm消息
EN

Stack Overflow用户
提问于 2016-05-30 01:34:37
回答 1查看 139关注 0票数 0

我有一个在后台模式下运行的简单扩展(基本上是示例chrome客户端gcm代码)。当我向我的扩展发送一条gcm消息,而chrome正在运行时,消息被正常接收。如果我随后关闭chrome,将gcm消息发送到相同的reg id,然后重新启动chrome,则不会收到这些消息。人们期望在扩展启动时调用onMessage (并且添加了onMessage侦听器)。为何不是这样呢?

EN

回答 1

Stack Overflow用户

发布于 2016-05-30 11:33:11

必须在扩展清单中注册Background pages。如果需要在背景页中指定HTML,可以使用page属性来实现:

manifest.json

代码语言:javascript
代码运行次数:0
运行
复制
{
  "name": "My extension",
  ...
  "background": {
    "page": "background.html"
  },
  ...
}

除此之外,由于我不确定您的代码中已经包含了什么,我不妨也添加一些关于service worker的内容。正如在Implementing Push Messaging for Chrome中所讨论的,需要注册一个服务工作者来实现web的推送消息。

这样做的原因是,当接收到推送消息时,浏览器可以启动一个在后台运行的服务工作线程,而无需打开页面,并调度一个事件,以便您可以决定如何处理该推送消息。

要完全理解服务工作者的功能,您可以通过本文中给出的Introduction to Service Worker和解决方案,因此post - GCM messages not getting delivered to Chrome Packaged Apps(offline mode)可能也适用于您。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37512906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档