我正在使用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_ART
和METADATA_KEY_DISPLAY_ICON
传递的不同数据,但我最关心的是,如果这会覆盖允许它的设备上所需的锁定屏幕背景,那么我不确定是什么我可以在这里做,所以任何意见都会非常感激。
如果您需要有关我的实施的更多信息,请在评论中告诉我。
谢谢
答案 0 :(得分:0)
不是一个完整的答案,但这是我在调查时的观察
因此,在测试了几个前棒棒糖设备,其中两个来自索尼,一个来自HTC。 我得出的结论是整个锁屏背景都无法替换,而是显示了一个像我的开场帖中那样的缩略图。
所以我所做的就是检查它是否像棒棒糖一样
if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP)
然后加载MediaMetadataCompat.METADATA_KEY_ART
奇怪的是,即使在棒棒糖上,锁定屏幕背景的更改也可以是设备特定的。我注意到我的三星平板电脑有棒棒糖没有改变整个锁屏背景,但只是显示通知。
我通过检查每个案例中的Spotify应用程序进一步验证了这一点,我用它作为我的控件来检查我是否在正确的轨道上