【问题标题】:Android GCM SENDER_ID, how to get it?Android GCM SENDER_ID,如何获取?
【发布时间】:2012-07-02 13:23:09
【问题描述】:

我尝试迁移到GCM,但我需要提供的SENDER_ID 存在问题。我使用谷歌的演示项目。在这个项目中,如果我理解这一点,我需要在 CommonUtilities.java 文件中为应用程序提供一个SENDER_ID

我提供的 SENDER_ID 是我在 https://code.google.com/apis/console/ 上注册的 API 密钥,格式如下:AIzaSyAxxxxxxx_xxxxxxxxxxxnoGZw(共 40 个字符)。

将此字符串用作SENDER_ID 我在“BroadcastReceiver mHandleMessageReceiver”上收到一条错误消息:From GCM: error (INVALID_SENDER)。

哪里出错了?我提供的字符串不是SENDER_ID

谢谢。

【问题讨论】:

标签: android google-cloud-messaging google-api-console sender-id


【解决方案1】:

不,SENDER_ID 是您在 Google API 控制台注册的项目 ID,它应该是一个数字字符串。例如在您的浏览器 URI 上,您应该会看到:

https://code.google.com/apis/console/#project:4815162342

发件人 ID 是 4815162342

更新答案:

Google 尚未完全更新其文档。上面的答案是旧的,它基于这个documentation,它似乎仍然没有更新。

根据更新的Google docs,似乎Google API Console上的Project Number被用作SENDER ID

【讨论】:

  • 我做了一些实验 - 我在互联网上找不到完整的答案,最后我发现 sender_id 是用于注册服务的电子邮件。如果您希望您的答案被标记为已接受,请编辑它。
  • Zelter,使用电子邮件地址作为 sender_id 是已弃用的 C2DM 注册方式。请参阅此处:developer.android.com/guide/google/gcm/c2dm.html,在“客户端更改”下:迁移很简单!应用程序中唯一需要的更改是将注册意图的 sender 参数中传递的电子邮件帐户替换为注册新服务时生成的项目 ID。
  • 谢谢 azgolfer。迁移怎么可能期望任何人都知道这一点?几乎就像 Google 正在竭尽全力让它变得尽可能棘手。
  • 嘿@azgolfer 你能根据我下面的回答更新你的答案吗? stackoverflow.com/a/27020029/231768 GCM 已从正在使用的项目 ID 更改,他们使用项目编号
  • SENDER_ID 可以在 google-services.json 文件(配置文件)中找到为“project_number”:“12456789”。
【解决方案2】:

我已经完成了最新的 Google API 控制台

如何获取SenderId

步骤

  1. 打开 Google api 控制台
  2. 创建项目
  3. 点击左侧菜单图标
  4. 点击谷歌云平台
  5. 您会在那里收到SenderId 表单

参考:

希望这会对你有所帮助。

【讨论】:

  • 请注意,您不应该通过过度绘制来进行审查,而是通过使用方框工具选择该部分来删除该部分。任何人都可以读取您的 URI 和 Projekt-ID,尤其是有恶意的人。
【解决方案3】:

转到您的Google APIs Console page。从左侧的下拉菜单中选择您使用的项目。选择概览,现在您可以看到project number。这是您必须使用的SENDER_ID

获取项目编号的另一种方法是从您的网址中获取“项目”的值。您的网址必须是这样的:“https://code.google.com/apis/console/b/0/#project:886025556782”。这里的项目编号是“886025556782”。这个号码是 SENDER_ID

【讨论】:

【解决方案4】:

截至 2014 年 11 月的更新答案如果您最近创建了 API 项目

首先,正确,您绝对应该转到 Google Developers Console 并找到您启用了 GCM 的项目。查看概览部分(左侧导航面板)时,您会看到右侧列出的项目 ID 和项目编号。项目 ID 对我来说失败了(这就是我在这里的原因),但是当我尝试项目编号时,我现在可以正确注册我的客户了。

请注意,这是不同的,因为 Google 最近修改了他们分配项目 ID 的方式。 10 月,我做了一个项目,并获得了一个全数字的项目 ID,我认为它可以正常工作。但是我今天创建的那个被赋予了一个两个单词和一个数字 id(如 Hamster-Party-420)和一个数字项目编号。我的项目的 URL 包含 Hamster-Party-420,项目编号仅在概览屏幕上可见。

【讨论】:

    【解决方案5】:

    又一个更新的答案,对困惑的解释不多(..就像我一样)。(归功于@azgolfer、@PankajAndroid 和@Adam)

    1- 如果您在https://console.developers.google.com 创建项目,您可以在项目概览中看到“项目 ID”和“项目编号”两个内容。 项目 ID 不再是数字,而是像 master-xxxxx-1234 这样的字母数字。 项目编号是一个 11 位数字如 123456789100。

    2- 即使您检查浏览器链接,您也可以找到它: https://console.developers.google.com/project/master-xxxxx-1234

    那么 master-xxxxx-1234 是 SENDER_ID(在某些地方称为 PROJECT ID)吗?没有。

    您必须使用项目编号作为 GCM 中的项目 ID。

    3- 在哪里可以交叉检查项目 ID 是否被用作项目 ID?

    在 API 仪表板上。 (网址:https://code.google.com/apis/console/b/0/?noredirect#project:12345678900 - 其中 12345678900 是您在项目仪表板上的项目编号。

    总结:项目仪表板和 API 仪表板中的项目 ID 不同。 project dashbaord 中的项目编号用作 API Dashboard 中的项目 id,project dashbaord 中的 Project Id 用作 API Dashboard 中的项目名称。 所以当我们在开发者控制台中创建项目时,Project Dashboard 中显示的项目编号在 GCM 中用作 SENDER_ID。

    【讨论】:

      【解决方案6】:

      在最新版本的开发者控制台中进入“Dashboard”,点击“Project: Turtle Power”下方的下拉箭头,就可以看到Project编号了!将其用作您的 SENDER_ID

      (假项目所以不要尝试=P)

      【讨论】:

        【解决方案7】:

        可能您尚未在 API COnsole 中激活 Google Cloud Messaging for Android。 以下是说明:

        http://developer.android.com/google/gcm/gs.html

        【讨论】:

          【解决方案8】:

          我们花了几个小时试图弄清楚这一点。问题是我们的 android manifest 没有包含发件人 ID!

          【讨论】:

            【解决方案9】:

            如果你来这里是因为你在做 web 推送、Android 推送等,会有不同的答案。

            来源:https://firebase.google.com/docs/cloud-messaging/js/client

            【讨论】:

              【解决方案10】:

              您使用的 SENDER_ID 只是授权密钥。 您可以在您的项目 Google API 控制台页面 URL 中找到 SENDER_ID

              https://code.google.com/apis/console/#project:8543162367

              这里 8543162367 将是您的 SENDER_ID , 并且项目 ID 不再是数字,它的字母数字或仅数字或仅字母任何东西,但它的位置与我显示的相同

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2012-07-16
                • 1970-01-01
                • 2014-04-22
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2012-08-05
                • 1970-01-01
                相关资源
                最近更新 更多