Android 12 Developer Preview is here! Try it out, and give us your feedback!

MediaStyle

open class MediaStyle : NotificationCompat.Style
kotlin.Any
   ↳ androidx.core.app.NotificationCompat.Style
   ↳ androidx.media.app.NotificationCompat.MediaStyle

Notification style for media playback notifications. In the expanded form, up to 5 actions specified with #addAction(int, CharSequence, PendingIntent) addAction will be shown as icon-only pushbuttons, suitable for transport controls. The Bitmap given to #setLargeIcon(android.graphics.Bitmap) setLargeIcon() will be treated as album artwork. Unlike the other styles provided here, MediaStyle can also modify the standard-size content view; by providing action indices to setShowActionsInCompactView(int...) you can promote up to 3 actions to be displayed in the standard view alongside the usual content. Notifications created with MediaStyle will have their category set to CATEGORY_TRANSPORT unless you set a different category using setCategory(). Finally, if you attach a MediaSession.Token using NotificationCompat.MediaStyle#setMediaSession, the System UI can identify this as a notification representing an active media session and respond accordingly (by showing album artwork in the lockscreen, for example). To use this style with your Notification, feed it to androidx.core.app.NotificationCompat.Builder#setStyle like so:

Notification noti = new NotificationCompat.Builder()
          .setSmallIcon(R.drawable.ic_stat_player)
          .setContentTitle("Track title")
          .setContentText("Artist - Album")
          .setLargeIcon(albumArtBitmap))
          .setStyle(<b>new NotificationCompat.MediaStyle()</b>.setMediaSession(mySession))
          .build();
      

Summary

Public constructors

Public methods
open static MediaSessionCompat.Token!
getMediaSession(notification: Notification!)

Extracts a MediaSessionCompat.Token from the extra values in the MediaStyle notification.

open NotificationCompat.MediaStyle!

Sets the pending intent to be sent when the cancel button is pressed.

open NotificationCompat.MediaStyle!

Attaches a MediaSessionCompat.Token to this Notification to provide additional playback information and control to the SystemUI.

open NotificationCompat.MediaStyle!

Requests up to 3 actions (by index in the order of addition) to be shown in the compact notification view.

open NotificationCompat.MediaStyle!

Sets whether a cancel button at the top right should be shown in the notification on platforms before Lollipop.

Inherited functions

Public constructors

<init>

MediaStyle()

<init>

MediaStyle(builder: NotificationCompat.Builder!)

Public methods

getMediaSession

open static fun getMediaSession(notification: Notification!): MediaSessionCompat.Token!

Extracts a MediaSessionCompat.Token from the extra values in the MediaStyle notification.

Parameters
notification Notification!: The notification to extract a MediaSessionCompat.Token from.
Return
MediaSessionCompat.Token! The MediaSessionCompat.Token in the notification if it contains, null otherwise.

setCancelButtonIntent

open fun setCancelButtonIntent(pendingIntent: PendingIntent!): NotificationCompat.MediaStyle!

Sets the pending intent to be sent when the cancel button is pressed. See .

Parameters
pendingIntent PendingIntent!: the intent to be sent when the cancel button is pressed

setMediaSession

open fun setMediaSession(token: MediaSessionCompat.Token!): NotificationCompat.MediaStyle!

Attaches a MediaSessionCompat.Token to this Notification to provide additional playback information and control to the SystemUI.

setShowActionsInCompactView

open fun setShowActionsInCompactView(vararg actions: Int): NotificationCompat.MediaStyle!

Requests up to 3 actions (by index in the order of addition) to be shown in the compact notification view.

Parameters
actions Int: the indices of the actions to show in the compact notification view

setShowCancelButton

open fun setShowCancelButton(