如何使用MediaSessionCompat并保持与RemoteControlClient的向后兼容性?

ani*_*ite 8 android

我想在我的应用程序中使用MediaSession替换我的Android RemoteControlClient类,但是不能使用API​​级别<21,MediaSessionCompat似乎可以在不破坏旧设备的情况下工作,但不会显示LockScreen上的ARTWORK或歌曲信息. ..

我的任何片段或信息?

谢谢大家!

ian*_*ake 12

从Support-v4库的第22版开始,MediaSessionCompat源代码显示它现在将自动注册并使用RemoteControlClientAPI 14-20设备,然后再切换到MediaSessionAPI21 +设备.

  • 不使用`Build.VERSION.SDK_INT> = Build.VERSION_CODES.LOLLIPOP` if语句保护每个调用,而是直接使用`MediaSessionCompat`.根本不支持MediaSession的替代方案(导致用户比例越来越不理想)或编写容易出错的代码(只丢失一条if语句会导致您的应用程序崩溃)不是可持续的编码实践. (7认同)
  • 这似乎违反直觉.使用MediaSessionCompat的原因是什么? (5认同)