2012-05-04 14 views
0

Googleのc2dmサービスを使用するAndroidアプリケーションを開発しようとしています。 すべてのデータを消去してからアプリケーションを起動すると、アプリケーションはc2dmメッセージを受信しますが、しばらくしてから(おそらく2分)、メッセージは到着することを拒否します。Androidアプリケーションはしばらくしてからc2dmメッセージの受信を停止します

サーバからc2dmメッセージをプッシュした後に受信したコードもチェックし、コードは正常に実行されました(エラーなしのコード番号200)。

スタックオーバーフローの関連記事を検索した後、我々はこの記事に出くわした: Why do Android C2DM push messages not always arrive? が、我々は我々がC2DMサービスにアプリケーションが起動するたびに登録していないことを確認しました。

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

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

ありがとうございます。 マーク。

答えて

0

"多分2分" - 最初にそれを確認する必要があります。

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

C2DMメッセージは保証されません。一部は到着しません。

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

+0

こんにちは。 多くのデバイスやエミュレータでこのアプリケーションを実行しました。 この問題は毎回発生しますが、ランダムな時間に開始されます.1分半後に開始されることもあります。 しかし、エミュレータではなく実際のデバイスでこの問題がかなり早く始まるようです。 「一部は届きません」に関しては、一部のメッセージは受信されていないものもあれば、受信されないものもあります。特定の時点まで**すべて**メッセージは到着するが、それから**メッセージ1つは到着しない。 – Mark268

+0

あなたは到着していない、または遅れていると確信していますか?いくつかのC2DMメッセージは非常に高速に到着し、他のものはしばらく時間がかかります。私の経験では少なくとも。 –

+0

おそらく、メッセージが到着するのを確実にするのに十分な時間待っていないことがあります。とにかく助けてくれてありがとう。 – Mark268

2

GoogleのC2DMでは、1日あたりのメッセージ数を制限することができます。私は2-3分(クライアントチャット、またはそのようなもの)で大量のメッセージを送信することがあなたの問題の原因になると考えています。

また、そのメッセージが到着することを保証するものではありません。 Per GoogleのC2DMはじめに:C2DMでは配信やメッセージの順序を保証していません。しかし、あなたはすでにこれを知っているでしょう。

私はあなたの2〜3分の平均がルールであれば、おそらくメッセージの制限が原因であると考えています。より少ないメッセージを送信して、間隔が大きくならないかどうかを確認してください。

関連する問題