2011-07-12 23 views
1

通知に奇妙な問題があります。通知のティッカーテキストを更新する

通知を作成しました。通知を更新し、新しいティッカーテキストを表示することがあります。

通知を作成すると、ティッカーテキストが正しく表示されます。
通知を最初に更新すると(下のコードで)、新しいティッカーテキストが正しく表示されます。
初めて同じコードと同じ引数(特に同じ新しいティッカーテキスト)を使用して、通知を2回更新すると、テロップテキストは表示されません。

問題はどこですか?

コード:

mNotification.tickerText = newTickerText; 
mNotification.when = System.currentTimeMillis(); 
mNotification.setLatestEventInfo(activity, title, message, pIntent); // I don’t think these arguments are relevant, but I can post more code if you want 
nm.notify(42, mNotification); // nm is the NotificationManager 

編集:
[OK]を、私はAndroidが、それは以前と同じである場合は、再度ティッカーテキストを表示したくない、原因を発見しました。 回避策はありますか?

編集#2:
私のアプリケーションは、マルチプレイヤーゲームでは、私は、ユーザーが接続されている期間中、オープンネットワークソケットを維持する必要があります。
しかし、私は新しいSMSを受信して​​それを読んでいるときなどに、ユーザーを突然切断したくはありません。私が欲しいのは、 "あなたは30秒後に切断される"のような通知をしていることです。
ユーザーが接続されているときにアプリケーションを終了してから30秒以内に戻ってからアプリケーションを再起動すると、上記の問題が発生します。ユーザーが何度も去って自分のアプリケーションに戻ってきたときに限り、同じメッセージが繰り返し点滅します(これは頻繁に起こるはずはありません)。

これはユーザーを嫌がらせる可能性がありますか?代わりに私は何をすべきですか?

答えて

3

回避策はありますか?

ユーザーが評価する意味のあるテキストを使用してください。同じメッセージを何度も点滅させて嫌がらせをしないでください。私が欲しいものを編集

に基づいて


UPDATEは、「あなたは30秒で切断されます」のようなものを言って、通知を行くに持っていることです。

これは問題ありません。

ユーザーが接続されているときにアプリケーションを終了してから30秒以内に戻ってからもう一度アプリケーションを終了すると問題が発生します。

ユーザーはあなたのアクティビティに戻りました。ここではNotificationをキャンセルする必要があります。この場合、同じティッカーメッセージを再表示することは問題ありません。

+0

私の編集#2を参照してください。 –

+0

はい、私はそれを行うことができますが、ユーザーがアプリケーションを離れるときにのみ通知を開始するのは変です。ユーザーが自分のアプリケーションを使用しているときでさえ、通知が進行中の通知(たとえば、彼がまだ接続されていれば彼の電話機のロックを解除せずに知ることができます)として存在することを望みます。またはキャンセルして、ティッカーメッセージなしで通知をすぐに再開できるということですか?これも奇妙に聞こえる。 –

+0

私は、あなたには「回避策」がないと言うことができます。異なるテキストを使用するか、 'Notification'を取り消して再起動してください。 – CommonsWare

0

継続的な通知コードが2つあります.1つはユーザーがアプリケーションを使用しているとき、もう1つはユーザーが残っているときです。ユーザーがアプリケーションを起動すると、「非アクティブ」通知が取り消され、「アクティブ」通知が表示されます。ユーザーが再び離れると、「アクティブ」通知がキャンセルされ、「非アクティブ」と表示されます。このようにして、「非アクティブ」通知を表示するときに常にティッカーを取得する必要があります。両方の通知が同じアイコンを持つ場合、ユーザーは気付かないかもしれません。接続が終了すると、両方の通知を非表示にするだけで、ユーザーは彼がオフラインであることを知ることができます。

関連する問題