哪里可以找到Firebase Cloud Messaging的Reference_Ids?

时间:2016-12-22 08:07:55

标签: android firebase firebase-cloud-messaging

经过大量的阅读和谷歌搜索后,我似乎已经为Google Cloud Messaging进行了完整的设置,以发送推送通知。我缺少的链接是我必须用来定位应用的 Reference_Ids 。我创建了一个项目,并将我的应用程序添加到其中。

当我向GCM发送推送请求时,我得到以下回复:

{"multicast_id":7952352701122753715,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}
    StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
    {
      X-Content-Type-Options: nosniff
      X-Frame-Options: SAMEORIGIN
      X-XSS-Protection: 1; mode=block
      Alt-Svc: quic=":443"; ma=2592000; v="35,34"
      Vary: Accept-Encoding
      Transfer-Encoding: chunked
      Accept-Ranges: none
      Cache-Control: max-age=0, private
      Date: Wed, 21 Dec 2016 16:12:43 GMT
      Server: GSE
      Content-Type: application/json; charset=UTF-8
      Expires: Wed, 21 Dec 2016 16:12:43 GMT
    }

错误显示为“InvalidRegistration”

所以我的问题是:

  • 我在哪里可以找到我的注册ID?
  • 作为相关的后续问题,我在哪里可以找到使用应用或特定群组或用户的所有人的Registration_Ids?
顺便说一句:我发现了一个相关的问题,但它似乎找不到找到这些ID的答案。 StackOverflow post

2 个答案:

答案 0 :(得分:2)

InvalidRegistration表示您使用的注册令牌(注册ID)无效(不存在,格式错误):

  

检查传递给服务器的注册令牌的格式。确保它与客户端应用程序通过Firebase Notifications注册时收到的注册令牌相匹配。不要截断或添加其他字符。

确保您使用正确且相应的注册令牌到您要发送邮件的设备。为了测试,我建议也使用Firebase Console,这样你就可以看到错误是否仍然存在。

对于Android,您可以retrieve the registration token致电:

FirebaseInstanceID.getToken()

然后,您可以选择将令牌存储到App Server。

答案 1 :(得分:-1)

您应该使用Api server_key。

转到firebase控制台 - >点击你的项目 - >点击齿轮图标 - > project_setting - > cloud_messaging