0

我正在使用mediaSessionCompat在锁定屏幕上呈现当前正在播放的音频。

从棒棒糖一切都很好,但是在棒棒糖之前,我在 Sony C6916 API 19 上遇到了以下问题

在此处输入图像描述

如上图所示,锁屏背景没有改变。相反,它添加了我将用于锁定屏幕的背景作为播放音频的图像

我知道不同的 Android 设备会有不同的行为,但有人知道解决这个问题的方法吗?

我将位图添加到元数据

  private void updateMediaSessionMetadataArtwork(Bitmap bitmap) {
    if (bitmap != null) {
        mediaMetadataBuilder.putBitmap(MediaMetadataCompat.METADATA_KEY_ART, bitmap);
        mediaSession.setMetadata(mediaMetadataBuilder.build());
    }
}

我知道可以传递的不同数据,METADATA_KEY_ALBUM_ARTMETADATA_KEY_DISPLAY_ICON我最担心的是,如果这会覆盖允许它的设备上所需的锁定屏幕背景,所以我不确定我可以在这里做什么,所以任何输入都将不胜感激。

如果您需要有关我的实施的更多信息,请在评论中告诉我。

谢谢

4

1 回答 1

0

不是一个完整的答案,但这是我在调查时的观察

因此,在对几台棒棒糖前的设备进行了测试之后,两台来自索尼,一台来自 HTC。我得出的结论是整个锁屏背景无法替换,而是显示一个缩略图,就像我开篇文章中的那个一样。

所以我要做的是检查它是否像这样的棒棒糖前

     if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) 

然后加载不同的位图MediaMetadataCompat.METADATA_KEY_ART

奇怪的是,即使在棒棒糖上,锁屏背景的变化也可以是特定于设备的。我注意到我的带有棒棒糖的三星平板电脑也没有改变整个锁屏背景,只是显示了通知。

我通过在每种情况下检查 Spotify 应用程序来进一步验证这一点,我用它来控制我是否在正确的轨道上

于 2017-08-05T18:48:31.793 回答