适用于 Android 的 Bluemix 推送通知未发送任何通知

Posted

技术标签:

【中文标题】适用于 Android 的 Bluemix 推送通知未发送任何通知【英文标题】:Bluemix push notification for android is not sending any notifications 【发布时间】:2016-09-13 21:47:45 【问题描述】:

我正在尝试使用此处提供的示例代码:https://github.com/ibm-bluemix-mobile-services/bms-samples-android-hellopush

我发现的第一个困难是配置 GCM - 自从它被记录以来似乎发生了一些变化 - 无论如何我想我已经正确配置了所有东西。

我的应用程序运行正常,我可以注册我的设备,但是当我尝试发送它时没有通知。我同时使用 bluemix 仪表板和 swagger 来发送消息。我得到的响应是消息已发送,但我在设备(手机,而不是模拟器)上什么也没有。

我检查了我的 Google API 仪表板,但 GCM api 上没有任何活动。

应用ID为:f97eb706-3375-438d-8221-cd7ac0266de1

【问题讨论】:

【参考方案1】:

我在使用 Postman 测试 GCM API (https://android.googleapis.com/gcm/send) 时收到“错误 401 未经授权”。我尝试创建新的 API 密钥,但没有成功。

读完后:https://***.com/a/22453025/6828416 我尝试在 GCM 上创建一个新项目,它突然开始工作

【讨论】:

今天在演示中我今天又遇到了这个问题@joe - 你能帮我调试一下吗? 当然!如果您打开支持票证,我们应该能够看到有关您的服务实例的更多信息,并且可能会在必要时进行屏幕共享会话。【参考方案2】:

目前正在为 GCM 更新文档,因此很快就会修复。

我试图重现您的问题,并在此处使用 Android 示例(使用最新版本的 Android Studio v2.1.3)测试了带有推送通知的示例:

之前:

之后:

这是我在克隆样本(模拟值)后编辑代码 sn-ps 的方式:

代码编辑 1 之前:

BMSClient.getInstance().initialize(this, "<APPLICATION_ROUTE>", "<APPLICATION_ID>", BMSClient.REGION_US_SOUTH);

代码编辑 1 之后:

BMSClient.getInstance().initialize(this, "http://imfpush.ng.bluemix.net", "dfadsfadsfdsf-2343-2334-8e82-421c02ce847c", BMSClient.REGION_US_SOUTH);

代码编辑 2 之前:

push.initialize(this, "<APPLICATION_ID>", "<CLIENT_SECRET>");

代码编辑 2 之后:

push.initialize(this, "dfadsfadsfdsf-2343-2334-8e82-421c02ce847c", "edec64df-34fd-44e3-9d1e-dfsfsdf989899");

我从推送通知服务凭证(模拟值)中获得了这些值。


这是我设置 GCM 的方法:

在我的 Bluemix 配置中,它看起来像这样(模拟值):

以下是我从 GCM(模拟值)中获取这些值的方式:

发件人 ID:

API 密钥:

【讨论】:

请与我联系,让我知道这是否适合您。如果没有,我们可以进行更多调试。 不幸的是它没有用。我从头开始创建所有内容,但仍然无法收到通知。 !Screenshot. 我注意到您的 API 密钥是在 2016 年 5 月 3 日创建的。@joe 您能否通过创建新 API 和新 API 密钥来运行新测试?我相信谷歌对 GCM 做了一些改动,我得到的和你的不一样。【参考方案3】:

@Paulo 对于新项目,仪表板不会在https://console.developers.google.com 中启用 GCM API。 启用 GCM 的步骤: 创建新项目->创建 API 密钥->启用 GCM。 要启用 GCM,请导航到仪表板选项卡并搜索 Google Cloud Messaging-> 单击 GCM 并启用 API。请等待 5 分钟以激活它。

为推送通知配置 GCM 凭据-> 注册设备并发送通知。

【讨论】:

以上是关于适用于 Android 的 Bluemix 推送通知未发送任何通知的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin.Forms - 适用于 iOS 和 Android 的推送通知

带有用户 ID 的 Bluemix 推送通知

适用于 Android 的 Firebase 推送通知

适用于 Android 的 Phonegap 推送通知

适用于 Android 的位置感知推送通知

如何使用适用于 Android 的 Push sharp 库一次发送多个推送通知?