问题标签 [firebase-cloud-messaging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
13 回答
197423 浏览

php - GCM 与 PHP(谷歌云消息)

更新:不推荐使用 GCM,请使用FCM

如何将新的Google Cloud Messaging集成到PHP 后端?

0 投票
6 回答
24554 浏览

android - java.io.IOException:GCM 客户端中的 SERVICE_NOT_AVAILABLE

我想在现有的 android 应用程序中实现一个 gcm 客户端。因此,按照教程,我编写了以下代码:

AndroidMainfest:

昨天一切正常,我可以检索注册 ID。但现在,总有一种IOException说法SERVICE_NOT_AVAILABLE

我在我的三星 Galaxy S5 和 Genymotion 模拟器 (Android 4.1.2) 上对其进行了测试,但我总是得到相同的结果。有谁知道如何解决这个问题?

编辑

这是完整的堆栈跟踪:

0 投票
2 回答
913 浏览

google-chrome - 如何在 Chrome 中实现 Google Cloud Messaging - Topic Messaging?

在 Google Cloud Messaging for Chrome 文档中没有关于主题消息功能的信息。 https://developers.google.com/cloud-messaging/chrome/client

还不可用?

这是没有订阅方法的 GCM 参考文档https://developer.chrome.com/apps/gcm

这是提供订阅/取消订阅方法的 GcmPubSub 类的 Android 和 iOS 参考: https: //developers.google.com/android/reference/com/google/android/gms/gcm/GcmPubSub https://developers。 google.com/cloud-messaging/ios/api/gcm/interface_g_c_m_pub_sub

0 投票
21 回答
265718 浏览

android - Android推送通知:通知中未显示图标,而是显示白色方块

我的应用程序生成通知,但我为该通知设置的图标没有显示。相反,我得到一个白色方块。

我尝试调整图标的 png 大小(尺寸 720x720、66x66、44x44、22x22)。奇怪的是,当使用较小的尺寸时,白色方块会更小。

我已经用谷歌搜索了这个问题,以及生成通知的正确方法,从我读过的内容来看,我的代码应该是正确的。可悲的是,事情并非如此。

我的手机是装有 Android 5.1.1 的 Nexus 5。这个问题也出现在模拟器上,一个带有 Android 5.0.1 的三星 Galaxy s4 和一个带有 Android 5.0.1 的摩托罗拉 Moto G(我都借了,现在没有)

通知代码如下,以及两个屏幕截图。如果您需要更多信息,请随时询问。

谢谢你们。

不打开通知 打开的通知

0 投票
6 回答
29789 浏览

android - GCM/FCM 中通知负载的大小

这个问题最初是指 Google Cloud Messaging (GCM),但现在它也适用于取代 GCM 的新 Firebase Cloud Messaging (FCM)。

我想知道当 GCM 有效载荷包含“通知”字典时如何计算它的大小。

我一直在尝试适用于 Android 的 Google Cloud Messaging 服务。文档的某些部分说您最多可以发送 4KB 的数据,这里它说“通知消息最多可以有 2kb 的有效负载”。

做一些测试,我可以发送带有 4KB 数据的“数据”有效负载的消息,并且服务器按预期接受它们而没有错误。

但是,使用“通知”有效负载,我发现我可以发送超过 2KB 数据的消息,并且服务器没有返回错误。我预计这样的消息会太大。

我发现“通知”有效负载与“数据”有效负载共享允许的 4KB,但方式不同。在“数据”有效负载中,您可以通过添加键和值的大小来计算大小。“通知”负载占用的空间比它包含的键和值的大小还要多。

当有效载荷包含“通知”字典时,如何提前计算有效载荷的大小?

0 投票
2 回答
1690 浏览

javascript - 如何从 javascript 注册到 GCM 主题(适用于 Chrome)

是关于如何在 Chrome 中实现 Google Cloud Messaging (GCM) 的一个很好的文档。但我在这里或任何地方都没有找到任何参考如何使用 javascript(用于 Chrome)订阅主题。

在这里,我找到了如何为 Android 执行任务的参考: https ://developers.google.com/cloud-messaging/topic-messaging#subscribe-to-a-topic

在 GCM 中订阅主题的 Java 代码(Android):

我不是在寻找什么

我不是在寻找 Chrome 应用程序/扩展程序的方法。

我想要什么

我想向我的所有用户发送推送通知。到目前为止,我知道这可以通过两种方式实现:

  1. 将消息推送到主题
  2. 或者我必须:“您需要发送设备的 reg id 列表,并且此列表不应超过 1000 这是 GCM 的限制,如果您想向 1000 多个设备发送消息,那么您需要打破列表1000 块。”

我想避免第 2 点。

我的问题

所以,我的问题是有没有办法使用 Javascript for Chrome 浏览器(网页)订阅 GCM 的主题?如果有,那该怎么做?

0 投票
2 回答
1125 浏览

android - 使用离子推送的多个推送通知

当发送两个通知时,第二个总是覆盖通知中心的第一个。根据文档,这应该只在使用标签时发生:

“tag”:表示每条通知消息是否在通知中心产生一个新条目。如果未设置,每个请求都会创建一个新通知。如果设置,并且已显示具有相同标签的通知,则新通知将替换现有通知。

然而,这一直发生在我身上,无论我是否为标签设置了一个值。

我什至尝试设置一个随机标签和collapse_key(据我所知,在这种情况下不应该相关,但我试了一下)。仍然没有帮助。这是我发送的通知对象的示例:

0 投票
1 回答
8953 浏览

javascript - “JSON_PARSING_ERROR:位置 0 的意外字符 (d)。” 从 GAS 发送 GCM 请求时

这似乎与许多其他问题非常相似,而且很明显该错误表明我的 JSON 有效负载有问题。但我不知道为什么。

我正在运行 Google Apps 脚本来测试向Google Firebase Cloud Messaging 发送消息。

我的代码:

当我在调试模式下运行它时,对象有效负载看起来很好 - 就像一个普通的 Javascript 对象。参数也是如此。UrlFetchApp 采用 Javascript 对象,而不是 JSON 表示法的字符串。但是我确实尝试了“JSON.stringify(params)”,但出现了错误。我做错什么了?

注意:当我在调试器中暂停它时,params 看起来像这样:

{"headers":{"Content-Type":"application/json","Authorization":"key=AbCdEfG"},"method":"post","payload":{"data":{"message" :"这是消息"},"to":"ZyXwVuT:ToKeNtOkEnToKeNtOkEnToKeNtOkEn"}}

0 投票
5 回答
31178 浏览

android - 需要从 GCM 迁移到 FCM?

Google 刚刚宣布 Google Cloud Messaging 现在更名为 Firebase Cloud Messaging。这对 GCM 的现有用户意味着什么以及需要进行哪些迁移(如果有)?

0 投票
15 回答
48427 浏览

android - 更新到 Android Build Tools 25.1.6 GCM / FCM 后出现 IncompatibleClassChangeError

由于我更新到 Android SDK Tools 25.1.6 和 Android Support Repository 32.0.0(今天早上),我收到以下错误,我没有更改我的代码中的任何内容,它仍在我同事的计算机上运行(Android SDK Tools 25.1.1 + Android 支持存储库 30.0.0)。

这是一段崩溃的代码:

当我尝试从 Google Cloud Messaging 获取令牌时。

我正在使用拆分播放服务在 Gradle 中导入 GCM:

编辑 禁用 GCM 解决了问题,所以我猜我应该迁移到 Firebase Cloud Message

EDIT2 我的设备收到 Google Play Services 9.0(昨天是 8.4.x)。现在它不再崩溃,但抱怨模块描述符

有没有人有类似的错误,以及如何解决它?

已修复特别感谢@stegranet ./gradlew -q app:dependencies --configuration compile帮助您确定哪些依赖项包括 SDK 24.x

主要问题是某些库使用+符号而不是版本导入最新的支持库。这会导致问题,包括最新的可用版本。

所以避免+登录依赖项;)