I saw this problem last week and it was solved with the code below
MediaSessionCompat mediaSession = new MediaSessionCompat(this, MEDIA_SESSION_TAG);
mediaSession.setActive(true);
mediaSession.setMetadata(
new MediaMetadataCompat.Builder()
.putString(MediaMetadata.METADATA_KEY_TITLE, title)
.putString(MediaMetadata.METADATA_KEY_ARTIST, author)
.build()
);
Add notification code like below or just add .setMediaSession(mediaSession.getSessionToken()))
for MediaStyle
Notification notification = new NotificationCompat.Builder(this, CHANNEL_ID)
.addAction(iconFavorite, "favorite", pendingFavoriteIntent)
.addAction(R.drawable.ic_notification_prev, "prev", pendingPrevIntent)
.addAction(iconPlayPause, titlePlayPause, pendingToggleIntent)
.addAction(R.drawable.ic_notification_next, "next", pendingNextIntent)
.addAction(R.drawable.ic_close, "cancel", pendingCancelIntent)
.setStyle(new androidx.media.app.NotificationCompat.MediaStyle()
.setShowActionsInCompactView(1, 2, 3)
.setShowCancelButton(true)
.setMediaSession(mediaSession.getSessionToken()))
.setSmallIcon(R.drawable.ic_notification_play)
.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
.setVibrate(new long[]{0L})
.setPriority(NotificationCompat.PRIORITY_MAX)
.setContentTitle(title)
.setContentText(author)
.setSubText(title)
.setContentIntent(selectPendingIntent)
.setLargeIcon(bm)
.build();