1

Bluemix を介してリモート通知を受信できる iOS アプリを作成しています。Xcode のアプリ バンドル ID は、APN 証明書 (xxx-sandbox.p12 および xxx-production.p12) とも一致する Apple ポータルの AppId と一致します。

開発中に、Bluemix Sandbox (MobileFirst Starter ボイラープレートの下) でプッシュ通知を使用してテストしました。すべて正常に動作します。iPhoneで通知を受け取ることができます。しかし、プロダクション モードでテストすると、「内部サーバー エラーです。デバイスが見つかりません」というエラー メッセージが表示され続けます。

デバイスが存在することを確認しました (REST API を使用: https://mobile.ng.bluemix.net/imfpushrestapidocs/#!/devices/get_apps_applicationId_devices )。

どんな提案でも大歓迎です。

4

1 に答える 1

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 呼び出しを使用して、モードの切り替えが発生したことを確認します (応答に "mode" : "PRODUCTION" が表示されるはずです)。

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

環境モードが切り替えられたら、クライアント コードを再実行して、デバイスを運用モードに登録する必要があります。そこからは、期待どおりにプッシュできるはずです。

于 2015-11-30T22:16:34.143 に答える