Как использовать MediaSessionCompat?

Как использовать MediaSessionCompat? Может ли кто-нибудь дать простой рабочий пример?

Я нашел некоторые, но они используют:

MediaSessionCompat _mediaSession = new MediaSessionCompat(context, "tag"); 

Это дает мне ошибку: The constructor MediaSessionCompat(Context, String) is undefined и хочет, чтобы я использовал MediaSessionCompat(Context, String, ComponentName, PendingIntent)

Solutions Collecting From Web of "Как использовать MediaSessionCompat?"

SampleMediaRouterActivity.java в Support7Demos кажется хорошим местом для начала.

https://android.googlesource.com/platform/development/+/master/samples/Support7Demos/src/com/example/android/supportv7/media/

Я нашел здесь рабочий пример, который я тестировал как на kitkat, так и на зефире.

https://github.com/tutsplus/background-audio-in-android-with-mediasessioncompat/blob/master/app/src/main/java/com/tutsplus/backgroundaudio/BackgroundAudioService.java

Но иногда обратите внимание, иногда блокировка управления экраном не появляется из-за настроек Android (например, «Настройки»> «Звуки и уведомления»> «Уведомление»> «Заблокировано»> «Скрыть конфиденциальное содержимое»). См. Ниже:

https://community.spotify.com/t5/Android/Android-Lollipop-Lock-Screen-Controls-Not-Available/td-p/982463

MediaSessionCompat находится в android.support.v4 и это конструктор, который он использует. Это обратная совместимость для MediaSession введенная в api 21, и это ее Contrustor ;. Однако, если вы хотите использовать конструктор, вы имеете в виду, что вам нужно скомпилировать свой проект с помощью api 21+;