2012-08-23 20 views
5

私はc2dm(gcm)を使ってAndroidのチャットアプリを開発中です。私のアプリが直接それを表示することができない場合、すべての受信メッセージは通知を提起します。問題は、ユーザーがグリッドから外れている場合です。この場合、c2dmメッセージはスタックし、オンラインに戻ったときにすべて一度に配信されます。通知音のカケフォニーは、1秒間にすべての通知を追加した結果です。これを防ぐ方法は?望ましい行動tickertextと通知内容は、最後に受信したメッセージ複数の通知音を防ぐandroid

答えて

5

私は将来1秒に設定されたアラームを使用して終了しました。同じ目的で複数のアラームを設定すると、以前のアラームは自動的に削除されます。したがって、1秒間隔で2番目の間隔が来たら、最初の間隔を削除します。

0

で最新である間だけのプロセスにcollapse_keyがを活用し、通知音は1回だけ再生されますことを、スタックの最後の「通知」である

のために詳細はhttps://developers.google.com/cloud-messaging/concept-options#collapsible_and_non-collapsible_messages

+0

ペイロード付きのメッセージを使用しているため(つまり、新しいチャットメッセージが利用可能であるだけでなく、本文も)、これは私の選択肢ではありません。したがって、1つのメッセージが折りたたまれている場合、それは私のクライアントには見逃されます。 GCMが以前に送信したメッセージが削除されたことを示すフラグを追加すると、サーバーに接続して同期をとることができます。しかしAFAIKは、メッセージが崩壊したことを伝える方法がありません。 –

関連する問題