【问题标题】:How to use MediaSessionCompat and keep backward compatibility with RemoteControlClient?如何使用 MediaSessionCompat 并保持与 RemoteControlClient 的向后兼容性?
【发布时间】:2014-10-20 20:22:36
【问题描述】:

我想用一个使用 MediaSession 的新类替换我的应用程序中的 android RemoteControlClient 类,但它不适用于 API 级别

有什么 sn-p 或信息给我吗?

谢谢大家!

【问题讨论】:

    标签: android


    【解决方案1】:

    从 Support-v4 库的第 22 版开始,source code for MediaSessionCompat 显示它现在将在 API 14-20 设备中自动注册和使用 RemoteControlClient,然后在 API21+ 设备上切换到 MediaSession

    【讨论】:

    • 这似乎真的违反直觉。使用 MediaSessionCompat 的根本原因是什么?
    • 您可以直接使用MediaSessionCompat,而不是使用Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP if 语句来保护每个调用。根本不支持 MediaSession(导致越来越多的用户体验次优)或编写容易出错的代码(缺少一个 if 语句会导致您的应用程序崩溃)的替代方案不是可持续的编码实践.
    • @ianhanniballake 是的,有 Compat,但你怎么能告诉 MediaSession 显示锁屏控件?对于棒棒糖,您将会话添加到 API 21 之前不可用的通知中。
    • @ianhanniballake 好的,谢谢。认为可能有另一种方式来使用 MediaSession。
    • 由于支持库r22刚出来,你需要更新你的答案,Ian
    猜你喜欢
    • 2015-07-17
    • 1970-01-01
    • 2011-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多