0

Google の c2dm サービスを使用する Android アプリケーションの開発を試みています。すべてのデータを消去した後にアプリケーションを起動すると、アプリケーションは c2dm メッセージを正常に受信しますが、しばらくすると (おそらく 2 分)、メッセージの受信が拒否されます。

また、サーバーから c2dm メッセージをプッシュした後に受け取ったコードを確認したところ、コードは成功しました (コード番号 200 エラーなし)。

Stack Overflow で関連する投稿を検索した後、次の投稿に出会いました: Android C2DM プッシュ メッセージが常に到着しないのはなぜですか? ただし、アプリケーションが起動するたびに c2dm サービスに登録しないことを確認しました。

私たちの場合、何が問題だと思われますか?

Android 2.2 API 8 バージョンを使用します。

前もってありがとう、マーク。

4

2 に答える 2

2

Google の C2DM では、1 日あたりのメッセージ数に一定の制限があることを常に念頭に置いておく必要があります。2 ~ 3 分で大量のメッセージ (クライアント チャットなど) を送信すると、問題が発生する可能性があると思います。

また、メッセージが届くという保証はまったくないことに注意してください。Google の C2DM による紹介: C2DM は、メッセージの配信または順序について保証しません。しかし、あなたはおそらくこれをすでに知っています。

2 ~ 3 分間の平均がルールである場合、おそらくメッセージの制限が原因である可能性があると考えています。送信するメッセージの数を減らして、間隔が大きくならないかどうかを確認してください。

于 2012-05-06T09:31:33.333 に答える
0

「たぶん2分」 - まず最初にそれを確認する必要があります。明確にする必要があります:

  • この問題は、この 1 つのデバイスに関連していますか?
  • それは一貫して起こりますか?そうでない場合、何がそれを引き起こしますか?
  • それは一度起こったことがありますか、それとも毎回起こりますか?

C2DM メッセージは保証されていないことに注意してください。届かない場合もあります。

また、Android デバイスでは c2dm が「脱落」し、一定期間メッセージを受信しない場合があることにも注意してください。一部のネットワークで同様の効果が見られます (たとえば、私の経験では、一部の C2DM メッセージは Wi-Fi ネットワーク経由で配信されないため、3G も試してください)。

于 2012-05-04T17:10:01.623 に答える