GCM 経由で Android デバイスに通知を送信すると、次の応答が返されます。
デバイス サブスクリプションの有効期限が切れました: PushSharp.Android.GcmPushService -> AppId
この問題により、電話でランダムな問題が発生します。たとえば、アプリは受信側で余分なコールバックを受け取ります。
このエラーの詳細を教えてください。それはいつ発生しますか?デバイスIDの登録に似ていますか?この状況に対処するために何をする必要がありますか?
ありがとう!
GCM 経由で Android デバイスに通知を送信すると、次の応答が返されます。
デバイス サブスクリプションの有効期限が切れました: PushSharp.Android.GcmPushService -> AppId
この問題により、電話でランダムな問題が発生します。たとえば、アプリは受信側で余分なコールバックを受け取ります。
このエラーの詳細を教えてください。それはいつ発生しますか?デバイスIDの登録に似ていますか?この状況に対処するために何をする必要がありますか?
ありがとう!
GcmPushChannel.csのコードを見るとDeviceSubscriptonExpiredException
、Google がNotRegistered
エラーまたは.cs を返したときに が返されていることがわかりますCanonicalRegistrationId
。
アプリがレシーバーで余分な呼び出しを受けると言っているので、DB に同じデバイスの複数の登録 ID があり、それらすべてにメッセージを送信すると、デバイスが複数のメッセージを受け取る可能性があります。これにより、Google からの応答で正規登録 ID を取得する理由が説明されます。
Push Sharp が Canonical Registration ID をどのように処理するかはわかりません。私が読んだ小さなコードから、DB から古い登録 ID を削除できるイベントが発生する可能性があります。