繁体   English   中英

Android 4.x RemoteControlClient.setTransportControlFlags()不起作用?

[英]Android 4.x RemoteControlClient.setTransportControlFlags() not working?

我正在尝试使用RemoteControlClient类来支持我的应用程序的锁屏播放器。 一个问题是设置传输控制标志似乎无法正常工作。

例如,我试图只显示播放/停止图标没有上一个/下一个:

mRemoteControlClient.setTransportControlFlags(
                        RemoteControlClient.FLAG_KEY_MEDIA_PLAY_PAUSE |
                        RemoteControlClient.FLAG_KEY_MEDIA_STOP);

这显示了之前的图标和暂停图标! 为什么?

为了使事情按下停止/播放键,你只会收到时更糟糕KEYCODE_MEDIA_PLAY_PAUSE时,你应该得到KEYCODE_MEDIA_STOPKEYCODE_MEDIA_PLAY

如果我发现我正确地做到这一点,这在Android方面是令人沮丧的糟糕发展。

FLAG_KEY_MEDIA_STOP永远不会显示停止因为此处报告的android中的错误: https//code.google.com/p/android/issues/detail? id = 29920

如果使用标志PLAY_PAUSE则不应产生KEYCODE_MEDIA_STOP事件。 为什么会这样? 这是一个播放/暂停切换操作,可以完成预期的操作。 您的应用程序可以存储媒体播放器的状态。

如果我正确理解文档,只有使用标志FLAG_KEY_MEDIA_PLAY和FLAG_KEY_MEDIA_PAUSE才能获得KEYCODE_MEDIA_PLAY或KEYCODE_MEDIA_PAUSE。 但是android可能会“聪明”并将其转换为切换。 对此我不确定。

使用FLAG_KEY_MEDIA_PLAY_PAUSE

oRemoteControlClient.setTransportControlFlags(RemoteControlClient.FLAG_KEY_MEDIA_PLAY_PAUSE);

并骗取RemoteControlClient ;-)

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

oRemoteControlClient.setPlaybackState(RemoteControlClient.PLAYSTATE_BUFFERING);

干杯

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM