MediaSession不会在锁定屏幕上显示背景

cas*_*orz 3 android android-5.0-lollipop

MediaSession在Lollipop上使用来控制播放.它似乎有效,因为我的Android Wear设备允许我控制播放,但是手机锁定屏幕没有显示图像,METADATA_KEY_ALBUM_ART_URIAndroid 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);
Run Code Online (Sandbox Code Playgroud)

谢谢.

cas*_*orz 6

看起来答案正在使用,MediaMetadata.METADATA_KEY_ALBUM_ART所以我不确定是什么意思METADATA_KEY_ALBUM_ART_URI.

metadataBuilder.putBitmap(MediaMetadata.METADATA_KEY_ALBUM_ART,bitmap);