私はサーバーからメッセージを受け取るアプリケーションに取り組んでいます。メッセージを受信すると、通知が表示されます。 2番目のメッセージが受信されると、新しい通知をまったく作成せずにスタックする必要があります。Androidの通知は積み重ねません
メッセージを受信したときに実行されるメソッドを持つインターフェイスを作成しました。
オブジェクトはメッセージが受信され、コンストラクタは上記のインタフェースを受け入れます。
サーバーオブジェクトを初期化するときに、リスナーインターフェイスの新しいインスタンスを渡します。このインスタンスでは、オーバーライドされたメソッドによって通知が作成されます。思考プロセスは、新しい通知が作成されるたびに、私はNEW_POST_NOTI
を1だけ増やしてグループに追加するということです。同じコードは、メッセージが受信されるたびに実行されていることを
final int PUSHES_GROUP = 67;
int NEW_POST_NOTI = 56;
...
Server server = new Server((msg) -> {
nm = NotificationManagerCompat.from(ctx);
Notification noti = new NotificationCompat.Builder(ctx)
.setSmallIcon(R.drawable.ic_noti)
.setContentTitle("New Message")
.setContentText(msg)
.setGroup(PUSHES_GROUP)
.build();
nm.notify(NEW_PUSH_NOTI++, noti);
});
、それらをグループ化するのではなく、メッセージごとに別々の通知を作成します。
私のコードは次のようになります。私もsetStyle
を使ってそれをInboxStyle
にしようとしましたが、通知を動的に追加する方法がわかりません。論理に問題がありますか、単にNotification APIを間違って使用していますか?
グルーピングはアンドロイドウェア用です。アンドロイドハンドヘルドの場合は、受信トレイスタイルをラインとサマリーで使用してください:https://developer.android。com/training/wearables/notifications/stacks.html#AddSummary – njzk2
あなたは正しいです。それにもかかわらず、私は想像するほど簡単ではありませんが、かなりシンプルです。 – Plays2