MobileFirst Starter - 生产模式下的Bluemix推送通知失败

时间:2015-11-30 21:54:42

标签: ios apple-push-notifications ibm-cloud ibm-mobilefirst ibm-mobile-services

我正在构建一个可以通过Bluemix接收远程通知的iOS应用程序。我在Xcode中的app Bundle Identifier与Apple Portal中的AppId匹配,它也匹配APN证书(xxx-sandbox.p12和xxx-production.p12)。

在开发过程中,我使用Bluemix Sandbox的推送通知进行了测试(在MobileFirst Starter样板下)。一切正常。我可以在iPhone上收到通知。但是,当我在生产模式下测试时,我不断收到错误消息:"内部服务器错误。找不到设备"。

我已确认我的设备存在(使用REST API:https://mobile.ng.bluemix.net/imfpushrestapidocs/#!/devices/get_apps_applicationId_devices)。

非常感谢任何建议。

1 个答案:

答案 0 :(得分:0)

好的,REST API显示您尚未在生产模式下注册任何设备。此外,它显示后端应用程序正在沙箱模式下工作,所以让我们先改变它。

为此,您需要PUT ApplicationID Settings REST API调用:

https://mobile.ng.bluemix.net/imfpushrestapidocs/#!/applications/put_apps_applicationId_settings

使用json身体

{ 
  "mode" : "PRODUCTION" 
}

然后我会使用GET ApplicationID Settings REST API调用来确认模式切换已经发生(你应该看到"模式":"生产"在响应中)

https://mobile.ng.bluemix.net/imfpushrestapidocs/#!/applications/get_apps_applicationId_settings

切换环境模式后,您需要重新运行客户端代码才能在生产模式下注册设备。从那里你应该能够按照你的期望推动。