0

C#Windowsサービスを使用してAPNに通知を送信しています。正常に動作しています。しかし、今日、Appleからエラー8(無効なトークン)を受け取りました。

このケースを処理するコードを追加しました(これ以上通知を送信しないように、データベースからトークンを削除します)。ただし、Appleが言うように、私は同じチャネルを介して通知のバッチを送信しています...そしてそれらは同じ接続で送信されます(応答が返されるまで失敗したことはわかりません)が、私は見ています他の通知が配信されていないこと。

これは正常なことですか?これにどう対処しますか?私はすべての通知を保存することを考えていました、そしてそれらすべてを送信した後、5秒待ちます... Appleが通知を送信しなかった場合、それはすべて良いです...何かが起こったら、エラーをチェックし、失敗した通知を削除しますエラーが受信されなくなるまで残りのものを送信します。

これは意味がありますか?

ありがとう!

4

1 に答える 1

0

それはまさに私たちがJavaPNSでやったことです。通知のリストがプッシュされ、そのリスト内の特定の通知に対してエラー応答パケットが受信されます。ライブラリは同じリストを使用して通知の送信を再開しますが、失敗した通知の後に通知を開始します。エラー応答パケットが受信されなくなるまでループします。

これは、リストに複数の無効なメッセージがある場合、何度も何度も通知をストリーミングすることを意味します...しかし、経験から、これがAPNSで正常に機能する唯一の方法のようです。

于 2012-04-21T14:23:13.297 に答える