diff --git a/RELEASENOTES.md b/RELEASENOTES.md index b1dfb314b4..934e02adb0 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -84,6 +84,10 @@ Release notes ([#112](https://github.com/androidx/media/issues/112)). * Don't start a foreground service with a pending intent for pause ([#167](https://github.com/androidx/media/issues/167)). + * Manually hide the 'badge' associated with the notification created by + `DefaultNotificationProvider` on API 26 and API 27 (the badge is + automatically hidden on API 28+) + ([#131](https://github.com/androidx/media/issues/131)). * RTSP: * Add H263 fragmented packet handling ([#119](https://github.com/androidx/media/pull/119)). diff --git a/libraries/session/src/main/java/androidx/media3/session/DefaultMediaNotificationProvider.java b/libraries/session/src/main/java/androidx/media3/session/DefaultMediaNotificationProvider.java index 21d61d6e30..5a836aff70 100644 --- a/libraries/session/src/main/java/androidx/media3/session/DefaultMediaNotificationProvider.java +++ b/libraries/session/src/main/java/androidx/media3/session/DefaultMediaNotificationProvider.java @@ -577,6 +577,12 @@ public class DefaultMediaNotificationProvider implements MediaNotification.Provi channelId, context.getString(channelNameResourceId), NotificationManager.IMPORTANCE_LOW); + if (Util.SDK_INT <= 27) { + // API 28+ will automatically hide the app icon 'badge' for notifications using + // Notification.MediaStyle, but we have to manually hide it for APIs 26 (when badges were + // added) and 27. + channel.setShowBadge(false); + } notificationManager.createNotificationChannel(channel); }