我在 Lollipop 上使用 MediaSession
来控制播放。它似乎有效,因为我的 Android Wear 设备允许我控制播放,但是手机锁定屏幕没有显示来自 METADATA_KEY_ALBUM_ART_URI
的图像,Android Wear 上的背景也没有显示。我正在使用我自己的自定义通知(不是媒体样式通知)。这是我的 MediaSession 代码。
if (mediaSession == null) {
mediaSession = new MediaSession(this, TAG);
mediaSession.setCallback(new MediaSessionCallback());
}
mediaSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS | MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS);
MediaMetadata.Builder metadataBuilder = new MediaMetadata.Builder();
metadataBuilder.putString(MediaMetadata.METADATA_KEY_TITLE, getMediaTitle());
if (imageURL != null) {
metadataBuilder.putString(MediaMetadata.METADATA_KEY_ALBUM_ART_URI, imageURL);
}
mediaSession.setMetadata(metadataBuilder.build());
PlaybackState.Builder stateBuilder = new PlaybackState.Builder();
stateBuilder.setActions(PlaybackState.ACTION_PLAY | PlaybackState.ACTION_PLAY_PAUSE | PlaybackState.ACTION_PAUSE | PlaybackState.ACTION_REWIND | PlaybackState.ACTION_FAST_FORWARD);
stateBuilder.setState(playStateStatus == Paused ? PlaybackState.STATE_PAUSED : PlaybackState.STATE_PLAYING, PlaybackState.PLAYBACK_POSITION_UNKNOWN, 1.0f);
mediaSession.setPlaybackState(stateBuilder.build());
mediaSession.setActive(true);
谢谢。
最佳答案
看起来答案是使用 MediaMetadata.METADATA_KEY_ALBUM_ART
所以我不确定 METADATA_KEY_ALBUM_ART_URI
的意义是什么。
metadataBuilder.putBitmap(MediaMetadata.METADATA_KEY_ALBUM_ART, bitmap);
关于android - MediaSession 在锁定屏幕上不显示背景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28547024/