2

C2DM アップデートを 1/2 時間ごとに Android アプリに送信しています。これにより、通知が作成されます。問題は、朝起きたときにステータスバーに15個の通知がキューに入れられることです。

以前の通知を上書きして、最新の通知のみを保持するにはどうすればよいですか?

collapse_key というパラメーターについて言及している C2DM のドキュメント ( http://code.google.com/android/c2dm/ ) を見てみましたが、使用方法の説明が見つからず、解決策もわかりませんでした。 C2DM 側にあります。

ありがとう!

4

4 に答える 4

5

ビューに設定された以前の通知をキャンセルしたい場合は、これらのフラグのいずれかを設定してみてください。

PendingIntent.FLAG_CANCEL_CURRENT or  PendingIntent.FLAG_UPDATE_CURRENT 

このようなものがあなたの古い通知を置き換えるはずです

 NotificationManager mManager= (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
 Intent intent = new Intent(this,test.class);
 Notification notification = new Notification(R.drawable.icon, "Notify", System.currentTimeMillis());
 notification.setLatestEventInfo(this,"App Name","Description of the notification",
 PendingIntent.getActivity(this.getBaseContext(), 0, intent, PendingIntent.FLAG_CANCEL_CURRENT));
 mManager.notify(0, notification);
于 2010-09-18T09:30:43.990 に答える
3

Notificationnumberアイコンの下に小さな数字を表示するというプロパティがあります(複数の通知用)。複数の通知に同じアイコンを使用できます。

ID通知を更新する際にも同じものを使用してください。:) 乾杯。

于 2010-09-18T09:42:08.780 に答える
0

collapse_idキーが仕事をするはずです。以前の通知を更新するには、同じキーを使用してください。デバイスで新しい通知を生成するには、別のキーを使用してください。

たとえば、* チャット通知にはキー "chat" を使用します (collapse_id = "chat") * 招待にはキー "invite" (collapse_id = "invite") を使用します

そのため、すべてのユニークな collapse_id 通知がデバイスでグループ化されます。

詳細については、https ://documentation.onesignal.com/reference#create-notification をご覧ください。

于 2016-12-13T12:41:59.967 に答える