Android RemoteControlClient仅在锁屏上显示播放/暂停切换

Android RemoteControlClient仅在锁屏上显示播放/暂停切换,android,Android,我的Android应用程序上有一个RemoteControlClient,我给了它以下标志: myRemoteControlClient.setTransportControlFlags( RemoteControlClient.FLAG_KEY_MEDIA_PLAY | RemoteControlClient.FLAG_KEY_MEDIA_PAUSE | RemoteControlClient.FLAG_KEY_MEDI

我的Android应用程序上有一个RemoteControlClient,我给了它以下标志:

 myRemoteControlClient.setTransportControlFlags(
            RemoteControlClient.FLAG_KEY_MEDIA_PLAY |
            RemoteControlClient.FLAG_KEY_MEDIA_PAUSE |
            RemoteControlClient.FLAG_KEY_MEDIA_REWIND |
            RemoteControlClient.FLAG_KEY_MEDIA_FAST_FORWARD |
            RemoteControlClient.FLAG_KEY_MEDIA_STOP);
然而,当它显示在锁屏上时,我只能看到暂停或播放,这取决于我是在播放还是暂停

没有办法显示其他控件吗

多谢各位

编辑:以下是我的其余代码:

    ComponentName myEventReceiver = new ComponentName(getApplicationContext().getPackageName(), PlayingBroadcastReceiver.class.getName());
    myAudioManager =
            (AudioManager) getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
    myAudioManager.registerMediaButtonEventReceiver(myEventReceiver);
    // build the PendingIntent for the remote control client
    Intent mediaButtonIntent = new Intent(Intent.ACTION_MEDIA_BUTTON);
    mediaButtonIntent.setComponent(myEventReceiver);
    PendingIntent mediaPendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, mediaButtonIntent, 0);
    // create and register the remote control client
    myRemoteControlClient = new RemoteControlClient(mediaPendingIntent);

    myRemoteControlClient.setTransportControlFlags(
            RemoteControlClient.FLAG_KEY_MEDIA_PLAY |
                    RemoteControlClient.FLAG_KEY_MEDIA_PAUSE |
                    RemoteControlClient.FLAG_KEY_MEDIA_REWIND | RemoteControlClient.FLAG_KEY_MEDIA_FAST_FORWARD |
                    RemoteControlClient.FLAG_KEY_MEDIA_STOP);
    myAudioManager.registerRemoteControlClient(myRemoteControlClient);


    myRemoteControlClient.editMetadata(true)
            .putString(MediaMetadataRetriever.METADATA_KEY_TITLE, item.getTitle())

            .putBitmap(RemoteControlClient.MetadataEditor.BITMAP_KEY_ARTWORK, item.getBitmap())

            .apply();
    setPlaybackState(RemoteControlClient.PLAYSTATE_PLAYING);
    //Request audio focus for playback
    int result = myAudioManager.requestAudioFocus(this,
            AudioManager.STREAM_MUSIC,
            AudioManager.AUDIOFOCUS_GAIN);

由于android中的错误,标志_KEY _MEDIA _STOP从不显示STOP,如下所述:

我不确定是不是支持库(您正在使用它吗?)导致快进和快退无法工作。
我也不能让它们显示出来,所以我用下一个和上一个来代替。我也不知道它们可能在锁屏上不可见,但可以通过耳机和其他实现它们的遥控器使用。

您可以使用此语句来显示图标

myRemoteControlClient.setTransportControlFlags(
                        RemoteControlClient.FLAG_KEY_MEDIA_PLAY   |
                        RemoteControlClient.FLAG_KEY_MEDIA_PAUSE  |
                        RemoteControlClient.FLAG_KEY_MEDIA_PREVIOUS |
                        RemoteControlClient.FLAG_KEY_MEDIA_NEXT );

使用标志\按键\媒体\播放\暂停

oRemoteControlClient.setTransportControlFlags(RemoteControlClient.FLAG\u KEY\u MEDIA\u PLAY\u PAUSE)

并对RemoteControlClient撒谎;-)

告诉他流正在缓冲,它将显示停止按钮

oRemoteControlClient.setPlaybackState(RemoteControlClient.PLAYSTATE\u缓冲)


干杯

没有看到所有代码(很难说,您粘贴的代码与示例完全相同)。你看过(并运行)MediaPlayer的Android示例了吗?我确实运行了随机音乐播放器示例,它只显示next和play/pause,尽管它也作为标志之一通过了stop。是的,我几乎只是复制了这个样本。我想这回答了我的问题。是的,前进和后退都不起作用,但上一个和下一个都起作用。“o”表示“对象”。“oRemoteControlClient”是RemoteControlClient的一个实例