4

ユーザーにプッシュ通知を送信するアプリにエラー処理を実装するために、Apple の TN2265 ( https://developer.apple.com/library/ios/technotes/tn2265/_index.html ) を参照しました。ドキュメントでは、エラーを非同期的に処理することを提案しています。具体的には次のとおりです。

6 バイトが返された場合、それはエラー応答であり、応答コードと、エラーの原因となった通知の ID を確認できます。その後、すべての通知を再度送信する必要があります。

一連の通知で、1 つが失敗した場合、それに続くすべての通知が失敗したことが保証されるということですか? そうでない場合、特定のデバイスに同じ通知が重複して送信されないようにするにはどうすればよいでしょうか?

4

1 に答える 1

2

はい、その場合、それに続くすべての通知は APNS サーバーによって処理されないことが保証されます。

APNS が無効なメッセージを検出すると、エラー応答をソケットに書き込み、接続を閉じます。そのエラー応答を受け取るまで、同じソケットで Apple にさらに多くのメッセージを送信している可能性があります。それらのすべてがAppleに届くわけではありません。新しいソケットを作成したら、それらすべてを再送信する必要があります。

重複のリスクはありません。

于 2013-09-25T16:03:56.043 に答える