2

这听起来可能很奇怪,但我看不到任何其他解释。

我已经在 Bluemix 上设置了 IBM Push Notifications,这是我以前做过的。出于某种原因,我构建了这个新应用程序。每当我发送推送通知时,它都没有通过,我再次尝试这样做,它告诉我没有设备。

这只是今天才发生在我身上,也许是服务的问题?

我尝试过/注意到的一些事情:

  • 我的设备正在注册并通过控制台从服务接收成功消息。
  • 我只有 1 台设备,但监控现在告诉我 7 台设备已注册通知。
  • 使用 web 控制台发送推送通知时,第一次显示成功(但没有任何结果),再次单击,显示Internal Server error: No devices found.
  • 使用swagger docs,我输入我的appID并搜索设备,没有出现。我运行应用程序,出现一个,我将应用程序放在后台,仍然显示一个。我通过大摇大摆发送通知,说成功,检查注册设备,返回空数组。
  • 我的 iOS 应用程序中的代码仅限于为IMFPush/ IMFCorecocoapods 提供的示例,用于注册。我没有任何类型的退订代码。
  • 我已经验证了这一点,而没有运行我的任何 node.js 代码或仅使用 swagger / web 控制台工具的 iOS 代码。
  • 我正在使用以前用于不同应用程序的沙盒配置文件。
  • 我已删除 IMF 推送服务并重新创建。

任何帮助/见解将不胜感激。

4

2 回答 2

1

@Simon 请重新下载推送沙箱证书并将其从钥匙串中导出为 .p12。这似乎解决了问题。尽管错误的私钥给了您“无效令牌”,但这似乎很奇怪。因此,当您尝试向无效令牌设备发送通知时,Apple 服务器正在删除设备。请确保您按照正确的步骤生成沙盒或生产证书https://console.ng.bluemix.net/docs/services/mobilepush/t_push_provider_ios.html

于 2016-03-10T04:21:29.967 回答
0

@SimonMcLoughlin 找到了这个问题的根本原因,这是因为私钥错误。要解决此问题,只需使用 .pem 生成 .p12 证书。要使用 .pem 文件创建 p12 文件,请按照以下方法创建 p12 文件的步骤

于 2016-04-11T10:49:35.637 回答