この記事を書いている時点ではAndroid 16においてユーザー側で通知のグループ化を無効にする方法はありません。アプリ開発者側での話になります。
Android 13~15までは、通知を作成する時にNotification.Builder#setGroup(java.lang.String)でグループキーを設定しておけばグループ化されず、個別に通知が表示されていました。しかしAndroid 16からこの回避策が効かなくなり、通知を2つ以上出すと自動的にグループ化されるようになってしまいました。
参照: Android 16 が登場
Android パブリックトラッカーでAndroid 16での通知のグループ化をアプリごとでオプトアウトできるようにと要望も上がっていましたが、今のところGoogleはやらないようです。
参照: Per-app setting to opt-out of Android 16 notification grouping
Androidアプリの開発者向けのページの 通知の動作 によるとAndroid 16.0 (API レベル 36) では
次の通知は自動的にグループ化されます。
- 要約のない通知
- 子通知のない通知
- 子通知が 1 つまたは少ない通知
となっています。つまり要約(Summary)があればグループ化されなさそうです。
で、ボタンをタップして通知を出すサンプルコード。
button.setOnClickListener { v ->
val notification = Notification.Builder(this, CHANNEL_ID)
.setSmallIcon(R.drawable.ic_android)
.setGroup("group-$count")
.setContentText("count=$count")
.build()
notificationManager.notify(count, notification)
val notificationSummary = Notification.Builder(this, CHANNEL_ID)
.setSmallIcon(R.drawable.ic_android)
.setGroup("group-$count")
.setGroupSummary(true)
.build()
notificationManager.notify(Integer.MAX_VALUE - count, notificationSummary)
count++
}
