Skip to content

//navigator/org.readium.r2.navigator.media/MediaService

MediaService

[androidJvm]\ open class MediaService : MediaBrowserServiceCompat, CoroutineScope

MediaBrowserServiceCompat implementation holding the current MediaSessionNavigator for background playback.

You should override this service in your app and declare it in your AndroidManifest.xml.

See https://developer.android.com/guide/topics/media-apps/audio-app/building-a-mediabrowserservice

Constructors

MediaService [androidJvm]
fun MediaService()

Types

Name Summary
Companion [androidJvm]
object Companion
Connection [androidJvm]
class Connection
Connection to any running MediaService instance.

Functions

Name Summary
addSubscription [androidJvm]
open fun addSubscription(id: String, connection: MediaBrowserServiceCompat.ConnectionRecord, token: IBinder, options: Bundle)
applyOptions [androidJvm]
open fun applyOptions(list: MutableList<MediaBrowserCompat.MediaItem>, options: Bundle): MutableList<MediaBrowserCompat.MediaItem>
attachBaseContext [androidJvm]
open override fun attachBaseContext(p0: Context)
attachToBaseContext [androidJvm]
@RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
open fun attachToBaseContext(base: Context)
bindIsolatedService [androidJvm]
open override fun bindIsolatedService(p0: Intent, p1: Int, p2: String, p3: Executor, p4: ServiceConnection): Boolean
bindService [androidJvm]
open override fun bindService(p0: Intent, p1: ServiceConnection, p2: Int): Boolean
open override fun bindService(p0: Intent, p1: Int, p2: Executor, p3: ServiceConnection): Boolean
bindServiceAsUser [androidJvm]
open override fun bindServiceAsUser(p0: Intent, p1: ServiceConnection, p2: Int, p3: UserHandle): Boolean
checkCallingOrSelfPermission [androidJvm]
open override fun checkCallingOrSelfPermission(p0: String): Int
checkCallingOrSelfUriPermission [androidJvm]
open override fun checkCallingOrSelfUriPermission(p0: Uri, p1: Int): Int
checkCallingOrSelfUriPermissions [androidJvm]
open override fun checkCallingOrSelfUriPermissions(p0: MutableList<Uri>, p1: Int): IntArray
checkCallingPermission [androidJvm]
open override fun checkCallingPermission(p0: String): Int
checkCallingUriPermission [androidJvm]
open override fun checkCallingUriPermission(p0: Uri, p1: Int): Int
checkCallingUriPermissions [androidJvm]
open override fun checkCallingUriPermissions(p0: MutableList<Uri>, p1: Int): IntArray
checkPermission [androidJvm]
open override fun checkPermission(p0: String, p1: Int, p2: Int): Int
checkSelfPermission [androidJvm]
open override fun checkSelfPermission(p0: String): Int
checkUriPermission [androidJvm]
open override fun checkUriPermission(p0: Uri, p1: Int, p2: Int, p3: Int): Int
open override fun checkUriPermission(p0: Uri?, p1: String?, p2: String?, p3: Int, p4: Int, p5: Int): Int
checkUriPermissions [androidJvm]
open override fun checkUriPermissions(p0: MutableList<Uri>, p1: Int, p2: Int, p3: Int): IntArray
clearWallpaper [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~clearWallpaper~~~~(~~~~)~~
coverOfPublication [androidJvm]
open suspend fun coverOfPublication(publicationId: PublicationId, publication: Publication): Bitmap?
Returns the cover for the given publication which should be used in media notifications.
createAttributionContext [androidJvm]
open override fun createAttributionContext(p0: String?): Context
createConfigurationContext [androidJvm]
open override fun createConfigurationContext(p0: Configuration): Context
createContext [androidJvm]
open override fun createContext(p0: ContextParams): Context
createContextForSplit [androidJvm]
open override fun createContextForSplit(p0: String): Context
createDeviceProtectedStorageContext [androidJvm]
open override fun createDeviceProtectedStorageContext(): Context
createDisplayContext [androidJvm]
open override fun createDisplayContext(p0: Display): Context
createPackageContext [androidJvm]
open override fun createPackageContext(p0: String, p1: Int): Context
createWindowContext [androidJvm]
open override fun createWindowContext(p0: Int, p1: Bundle?): Context
open override fun createWindowContext(p0: Display, p1: Int, p2: Bundle?): Context
databaseList [androidJvm]
open override fun databaseList(): Array<String>
deleteDatabase [androidJvm]
open override fun deleteDatabase(p0: String): Boolean
deleteFile [androidJvm]
open override fun deleteFile(p0: String): Boolean
deleteSharedPreferences [androidJvm]
open override fun deleteSharedPreferences(p0: String): Boolean
dump [androidJvm]
open override fun dump(fd: FileDescriptor, writer: PrintWriter, args: Array<String>)
enforceCallingOrSelfPermission [androidJvm]
open override fun enforceCallingOrSelfPermission(p0: String, p1: String?)
enforceCallingOrSelfUriPermission [androidJvm]
open override fun enforceCallingOrSelfUriPermission(p0: Uri, p1: Int, p2: String)
enforceCallingPermission [androidJvm]
open override fun enforceCallingPermission(p0: String, p1: String?)
enforceCallingUriPermission [androidJvm]
open override fun enforceCallingUriPermission(p0: Uri, p1: Int, p2: String)
enforcePermission [androidJvm]
open override fun enforcePermission(p0: String, p1: Int, p2: Int, p3: String?)
enforceUriPermission [androidJvm]
open override fun enforceUriPermission(p0: Uri, p1: Int, p2: Int, p3: Int, p4: String)
open override fun enforceUriPermission(p0: Uri?, p1: String?, p2: String?, p3: Int, p4: Int, p5: Int, p6: String?)
fileList [androidJvm]
open override fun fileList(): Array<String>
getApplication [androidJvm]
fun getApplication(): Application
getApplicationContext [androidJvm]
open override fun getApplicationContext(): Context
getApplicationInfo [androidJvm]
open override fun getApplicationInfo(): ApplicationInfo
getAssets [androidJvm]
open override fun getAssets(): AssetManager
getAttributionSource [androidJvm]
open override fun getAttributionSource(): AttributionSource
getAttributionTag [androidJvm]
open override fun getAttributionTag(): String?
getBaseContext [androidJvm]
open fun getBaseContext(): Context
getBrowserRootHints [androidJvm]
fun getBrowserRootHints(): Bundle
getCacheDir [androidJvm]
open override fun getCacheDir(): File
getClassLoader [androidJvm]
open override fun getClassLoader(): ClassLoader
getCodeCacheDir [androidJvm]
open override fun getCodeCacheDir(): File
getColor [androidJvm]
fun getColor(p0: Int): Int
getColorStateList [androidJvm]
fun getColorStateList(p0: Int): ColorStateList
getContentResolver [androidJvm]
open override fun getContentResolver(): ContentResolver
getCurrentBrowserInfo [androidJvm]
@NonNull
fun getCurrentBrowserInfo(): MediaSessionManager.RemoteUserInfo
getDatabasePath [androidJvm]
open override fun getDatabasePath(p0: String): File
getDataDir [androidJvm]
open override fun getDataDir(): File
getDir [androidJvm]
open override fun getDir(p0: String, p1: Int): File
getDisplay [androidJvm]
open override fun getDisplay(): Display?
getDrawable [androidJvm]
fun getDrawable(p0: Int): Drawable?
getExternalCacheDir [androidJvm]
open override fun getExternalCacheDir(): File?
getExternalCacheDirs [androidJvm]
open override fun getExternalCacheDirs(): Array<File>
getExternalFilesDir [androidJvm]
open override fun getExternalFilesDir(p0: String?): File?
getExternalFilesDirs [androidJvm]
open override fun getExternalFilesDirs(p0: String): Array<File>
getExternalMediaDirs [androidJvm]
open override fun getExternalMediaDirs(): Array<File>
getFilesDir [androidJvm]
open override fun getFilesDir(): File
getFileStreamPath [androidJvm]
open override fun getFileStreamPath(p0: String): File
getForegroundServiceType [androidJvm]
fun getForegroundServiceType(): Int
getMainExecutor [androidJvm]
open override fun getMainExecutor(): Executor
getMainLooper [androidJvm]
open override fun getMainLooper(): Looper
getNoBackupFilesDir [androidJvm]
open override fun getNoBackupFilesDir(): File
getObbDir [androidJvm]
open override fun getObbDir(): File
getObbDirs [androidJvm]
open override fun getObbDirs(): Array<File>
getOpPackageName [androidJvm]
open override fun getOpPackageName(): String
getPackageCodePath [androidJvm]
open override fun getPackageCodePath(): String
getPackageManager [androidJvm]
open override fun getPackageManager(): PackageManager
getPackageName [androidJvm]
open override fun getPackageName(): String
getPackageResourcePath [androidJvm]
open override fun getPackageResourcePath(): String
getParams [androidJvm]
open override fun getParams(): ContextParams?
getResources [androidJvm]
open override fun getResources(): Resources
getSessionToken [androidJvm]
@Nullable
open fun getSessionToken(): MediaSessionCompat.Token?
getSharedPreferences [androidJvm]
open override fun getSharedPreferences(p0: String, p1: Int): SharedPreferences
getString [androidJvm]
fun getString(p0: Int): String
fun getString(p0: Int, vararg p1: Any): String
getSystemService [androidJvm]
fun <T : Any> getSystemService(p0: Class<T>): T
open override fun getSystemService(p0: String): Any
getSystemServiceName [androidJvm]
open override fun getSystemServiceName(p0: Class<*>): String?
getText [androidJvm]
fun getText(p0: Int): CharSequence
getTheme [androidJvm]
open override fun getTheme(): Resources.Theme
getWallpaper [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~getWallpaper~~~~(~~~~)~~~~:~~ Drawable
getWallpaperDesiredMinimumHeight [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~getWallpaperDesiredMinimumHeight~~~~(~~~~)~~~~:~~ Int
getWallpaperDesiredMinimumWidth [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~getWallpaperDesiredMinimumWidth~~~~(~~~~)~~~~:~~ Int
grantUriPermission [androidJvm]
open override fun grantUriPermission(p0: String, p1: Uri, p2: Int)
isClientAuthorized [androidJvm]
open fun isClientAuthorized(packageName: String, uid: Int): Boolean
Override to control which app can access the MediaSession through the MediaBrowserService. By default, only our own app can.
isDeviceProtectedStorage [androidJvm]
open override fun isDeviceProtectedStorage(): Boolean
isRestricted [androidJvm]
open override fun isRestricted(): Boolean
isUiContext [androidJvm]
open override fun isUiContext(): Boolean
isValidPackage [androidJvm]
open fun isValidPackage(pkg: String, uid: Int): Boolean
moveDatabaseFrom [androidJvm]
open override fun moveDatabaseFrom(p0: Context, p1: String): Boolean
moveSharedPreferencesFrom [androidJvm]
open override fun moveSharedPreferencesFrom(p0: Context, p1: String): Boolean
notifyChildrenChanged [androidJvm]
open fun notifyChildrenChanged(@NonNullparentId: String)
open fun notifyChildrenChanged(@NonNullparentId: String, @NonNulloptions: Bundle)
@RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
open fun notifyChildrenChanged(@NonNullremoteUserInfo: MediaSessionManager.RemoteUserInfo, @NonNullparentId: String, @NonNulloptions: Bundle)
obtainStyledAttributes [androidJvm]
fun obtainStyledAttributes(p0: IntArray): TypedArray
fun obtainStyledAttributes(p0: AttributeSet?, p1: IntArray): TypedArray
fun obtainStyledAttributes(p0: Int, p1: IntArray): TypedArray
fun obtainStyledAttributes(p0: AttributeSet?, p1: IntArray, p2: Int, p3: Int): TypedArray
onBind [androidJvm]
open override fun onBind(intent: Intent): IBinder?
onCommand [androidJvm]
open fun onCommand(command: String, args: Bundle?, cb: ResultReceiver?): Boolean
Handles a custom command delivered by MediaSessionCompat.Callback.onCommand.
onConfigurationChanged [androidJvm]
open override fun onConfigurationChanged(p0: Configuration)
onCreate [androidJvm]
open override fun onCreate()
onCreateNotificationIntent [androidJvm]
open suspend fun onCreateNotificationIntent(publicationId: PublicationId, publication: Publication): PendingIntent?
Creates the PendingIntent which will be used to start the media activity when the user activates the media notification.
onCreateNotificationMetadata [androidJvm]
open fun onCreateNotificationMetadata(publicationId: PublicationId, publication: Publication, link: Link): MediaPlayer.NotificationMetadata
Creates the MediaPlayer.NotificationMetadata for the given resource link.
onCreatePlayer [androidJvm]
open fun onCreatePlayer(mediaSession: MediaSessionCompat, media: PendingMedia): MediaPlayer
Creates the instance of MediaPlayer which will be used for playing the given media.
onCustomAction [androidJvm]
open fun onCustomAction(@NonNullaction: String, extras: Bundle, @NonNullresult: MediaBrowserServiceCompat.Result<Bundle>)
onDestroy [androidJvm]
open override fun onDestroy()
onGetRoot [androidJvm]
open override fun onGetRoot(clientPackageName: String, clientUid: Int, rootHints: Bundle?): MediaBrowserServiceCompat.BrowserRoot?
onLoadChildren [androidJvm]
open override fun onLoadChildren(parentId: String, result: MediaBrowserServiceCompat.Result<MutableList<MediaBrowserCompat.MediaItem>>)
open fun onLoadChildren(@NonNullparentId: String, @NonNullresult: MediaBrowserServiceCompat.Result<MutableList<MediaBrowserCompat.MediaItem>>, @NonNulloptions: Bundle)
onLoadItem [androidJvm]
open fun onLoadItem(itemId: String, @NonNullresult: MediaBrowserServiceCompat.Result<MediaBrowserCompat.MediaItem>)
onLowMemory [androidJvm]
open override fun onLowMemory()
onPlayerStopped [androidJvm]
open fun onPlayerStopped()
Called when the underlying MediaPlayer was stopped.
onRebind [androidJvm]
open fun onRebind(p0: Intent)
onResourceLoadFailed [androidJvm]
open fun onResourceLoadFailed(link: Link, error: Resource.Exception)
Called when a resource failed to be loaded, for example because the Internet connection is offline and the resource is streamed.
onSearch [androidJvm]
open fun onSearch(@NonNullquery: String, extras: Bundle, @NonNullresult: MediaBrowserServiceCompat.Result<MutableList<MediaBrowserCompat.MediaItem>>)
onStart [androidJvm]
~~open~~ ~~fun~~ ~~onStart~~~~(~~~~p0~~~~:~~ Intent~~,~~ ~~p1~~~~:~~ Int~~)~~
onStartCommand [androidJvm]
open fun onStartCommand(p0: Intent, p1: Int, p2: Int): Int
onSubscribe [androidJvm]
@RestrictTo(value = [RestrictTo.Scope.LIBRARY])
open fun onSubscribe(id: String, option: Bundle)
onTaskRemoved [androidJvm]
open fun onTaskRemoved(p0: Intent)
onTrimMemory [androidJvm]
open override fun onTrimMemory(p0: Int)
onUnbind [androidJvm]
open fun onUnbind(p0: Intent): Boolean
onUnsubscribe [androidJvm]
@RestrictTo(value = [RestrictTo.Scope.LIBRARY])
open fun onUnsubscribe(id: String)
openFileInput [androidJvm]
open override fun openFileInput(p0: String): FileInputStream
openFileOutput [androidJvm]
open override fun openFileOutput(p0: String, p1: Int): FileOutputStream
openOrCreateDatabase [androidJvm]
open override fun openOrCreateDatabase(p0: String, p1: Int, p2: SQLiteDatabase.CursorFactory): SQLiteDatabase
open override fun openOrCreateDatabase(p0: String, p1: Int, p2: SQLiteDatabase.CursorFactory, p3: DatabaseErrorHandler?): SQLiteDatabase
peekWallpaper [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~peekWallpaper~~~~(~~~~)~~~~:~~ Drawable
performCustomAction [androidJvm]
open fun performCustomAction(action: String, extras: Bundle, connection: MediaBrowserServiceCompat.ConnectionRecord, receiver: ResultReceiver)
performLoadChildren [androidJvm]
open fun performLoadChildren(parentId: String, connection: MediaBrowserServiceCompat.ConnectionRecord, subscribeOptions: Bundle, notifyChildrenChangedOptions: Bundle)
performLoadItem [androidJvm]
open fun performLoadItem(itemId: String, connection: MediaBrowserServiceCompat.ConnectionRecord, receiver: ResultReceiver)
performSearch [androidJvm]
open fun performSearch(query: String, extras: Bundle, connection: MediaBrowserServiceCompat.ConnectionRecord, receiver: ResultReceiver)
registerComponentCallbacks [androidJvm]
open fun registerComponentCallbacks(p0: ComponentCallbacks)
registerReceiver [androidJvm]
open override fun registerReceiver(p0: BroadcastReceiver?, p1: IntentFilter): Intent?
open override fun registerReceiver(p0: BroadcastReceiver?, p1: IntentFilter, p2: Int): Intent?
open override fun registerReceiver(p0: BroadcastReceiver?, p1: IntentFilter, p2: String?, p3: Handler?): Intent?
open override fun registerReceiver(p0: BroadcastReceiver?, p1: IntentFilter, p2: String?, p3: Handler?, p4: Int): Intent?
removeStickyBroadcast [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~removeStickyBroadcast~~~~(~~~~p0~~~~:~~ Intent~~)~~
removeStickyBroadcastAsUser [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~removeStickyBroadcastAsUser~~~~(~~~~p0~~~~:~~ Intent~~,~~ ~~p1~~~~:~~ UserHandle~~)~~
removeSubscription [androidJvm]
open fun removeSubscription(id: String, connection: MediaBrowserServiceCompat.ConnectionRecord, token: IBinder): Boolean
revokeUriPermission [androidJvm]
open override fun revokeUriPermission(p0: Uri, p1: Int)
open override fun revokeUriPermission(p0: String, p1: Uri, p2: Int)
sendBroadcast [androidJvm]
open override fun sendBroadcast(p0: Intent)
open override fun sendBroadcast(p0: Intent, p1: String?)
sendBroadcastAsUser [androidJvm]
open override fun sendBroadcastAsUser(p0: Intent, p1: UserHandle)
open override fun sendBroadcastAsUser(p0: Intent, p1: UserHandle, p2: String?)
sendBroadcastWithMultiplePermissions [androidJvm]
open fun sendBroadcastWithMultiplePermissions(p0: Intent, p1: Array<String>)
sendOrderedBroadcast [androidJvm]
open override fun sendOrderedBroadcast(p0: Intent, p1: String?)
open override fun sendOrderedBroadcast(p0: Intent, p1: String?, p2: BroadcastReceiver?, p3: Handler?, p4: Int, p5: String?, p6: Bundle?)
open override fun sendOrderedBroadcast(p0: Intent, p1: String?, p2: String?, p3: BroadcastReceiver?, p4: Handler?, p5: Int, p6: String?, p7: Bundle?)
open fun sendOrderedBroadcast(p0: Intent, p1: Int, p2: String?, p3: String?, p4: BroadcastReceiver?, p5: Handler?, p6: String?, p7: Bundle?, p8: Bundle?)
sendOrderedBroadcastAsUser [androidJvm]
open override fun sendOrderedBroadcastAsUser(p0: Intent, p1: UserHandle, p2: String?, p3: BroadcastReceiver?, p4: Handler?, p5: Int, p6: String?, p7: Bundle?)
sendStickyBroadcast [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~sendStickyBroadcast~~~~(~~~~p0~~~~:~~ Intent~~)~~
~~open~~ ~~override~~ ~~fun~~ ~~sendStickyBroadcast~~~~(~~~~p0~~~~:~~ Intent~~,~~ ~~p1~~~~:~~ Bundle?~~)~~
sendStickyBroadcastAsUser [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~sendStickyBroadcastAsUser~~~~(~~~~p0~~~~:~~ Intent~~,~~ ~~p1~~~~:~~ UserHandle~~)~~
sendStickyOrderedBroadcast [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~sendStickyOrderedBroadcast~~~~(~~~~p0~~~~:~~ Intent~~,~~ ~~p1~~~~:~~ BroadcastReceiver?~~,~~ ~~p2~~~~:~~ Handler?~~,~~ ~~p3~~~~:~~ Int~~,~~ ~~p4~~~~:~~ String?~~,~~ ~~p5~~~~:~~ Bundle?~~)~~
sendStickyOrderedBroadcastAsUser [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~sendStickyOrderedBroadcastAsUser~~~~(~~~~p0~~~~:~~ Intent~~,~~ ~~p1~~~~:~~ UserHandle~~,~~ ~~p2~~~~:~~ BroadcastReceiver?~~,~~ ~~p3~~~~:~~ Handler?~~,~~ ~~p4~~~~:~~ Int~~,~~ ~~p5~~~~:~~ String?~~,~~ ~~p6~~~~:~~ Bundle?~~)~~
setSessionToken [androidJvm]
open fun setSessionToken(token: MediaSessionCompat.Token)
setTheme [androidJvm]
open override fun setTheme(p0: Int)
setWallpaper [androidJvm]
~~open~~ ~~override~~ ~~fun~~ ~~setWallpaper~~~~(~~~~p0~~~~:~~ Bitmap~~)~~
~~open~~ ~~override~~ ~~fun~~ ~~setWallpaper~~~~(~~~~p0~~~~:~~ InputStream~~)~~
startActivities [androidJvm]
open override fun startActivities(p0: Array<Intent>)
open override fun startActivities(p0: Array<Intent>, p1: Bundle?)
startActivity [androidJvm]
open override fun startActivity(p0: Intent)
open override fun startActivity(p0: Intent, p1: Bundle?)
startForeground [androidJvm]
fun startForeground(p0: Int, p1: Notification)
fun startForeground(p0: Int, p1: Notification, p2: Int)
startForegroundService [androidJvm]
open override fun startForegroundService(p0: Intent): ComponentName?
startInstrumentation [androidJvm]
open override fun startInstrumentation(p0: ComponentName, p1: String?, p2: Bundle?): Boolean
startIntentSender [androidJvm]
open override fun startIntentSender(p0: IntentSender, p1: Intent?, p2: Int, p3: Int, p4: Int)
open override fun startIntentSender(p0: IntentSender, p1: Intent?, p2: Int, p3: Int, p4: Int, p5: Bundle?)
startService [androidJvm]
open override fun startService(p0: Intent): ComponentName?
stopForeground [androidJvm]
fun stopForeground(p0: Boolean)
fun stopForeground(p0: Int)
stopSelf [androidJvm]
fun stopSelf()
fun stopSelf(p0: Int)
stopSelfResult [androidJvm]
fun stopSelfResult(p0: Int): Boolean
stopService [androidJvm]
open override fun stopService(p0: Intent): Boolean
unbindService [androidJvm]
open override fun unbindService(p0: ServiceConnection)
unregisterComponentCallbacks [androidJvm]
open fun unregisterComponentCallbacks(p0: ComponentCallbacks)
unregisterReceiver [androidJvm]
open override fun unregisterReceiver(p0: BroadcastReceiver)
updateServiceGroup [androidJvm]
open override fun updateServiceGroup(p0: ServiceConnection, p1: Int, p2: Int)

Properties

Name Summary
coroutineContext [androidJvm]
open override val coroutineContext: CoroutineContext
mConnectionFromFwk [androidJvm]
val mConnectionFromFwk: MediaBrowserServiceCompat.ConnectionRecord
mConnections [androidJvm]
val mConnections: ArrayMap<IBinder, MediaBrowserServiceCompat.ConnectionRecord>
mCurConnection [androidJvm]
val mCurConnection: MediaBrowserServiceCompat.ConnectionRecord
mHandler [androidJvm]
val mHandler: MediaBrowserServiceCompat.ServiceHandler
mPendingConnections [androidJvm]
val mPendingConnections: ArrayList<MediaBrowserServiceCompat.ConnectionRecord>
mSession [androidJvm]
val mSession: MediaSessionCompat.Token