我目前正试图为一个音频应用程序开发一个小部件。这个小部件包括一个跳转到前一个、一个播放和一个跳到next按钮,如下图所示。

我跟踪了这个推荐方法和play_pause按钮,它正确地运行了,但目前只有在播放已经开始的情况下才能正常工作。
要开始播放,用户必须打开应用程序。2)选择播客。3)选择一集播放。4)等待缓冲完成
只需将正确的PendingIntent设置为play_pause按钮就可以完成这项工作。因此,当单击此按钮时,将调用我的MediaSession.Callback.onPlay()方法。
不幸的是,、skip_to_next、和skip_to_next按钮的情况并非如此。我希望在单击skip_to_next小部件按钮时调用MediaSession.Callback.onSkipToNext()。
发布于 2018-07-17 16:40:13
我不确定这是否是完整的解决方案,但前面和下一个按钮似乎没有注册吗?
我以前并没有真正使用过MediaButtonReceiver,所以我猜,但是我在PlayBackUtils中添加了ACTION_SKIP_TO_PREVIOUS到getPlaybackStateFromPlayerState中,现在代码确实接收到了以前的事件,并且实际上也改变了前面的轨道。
case STARTED:
return stateBuilder
.setState(PlaybackStateCompat.STATE_PLAYING,
currentPosition, playbackSpeed)
.setActions(PlaybackStateCompat.ACTION_PAUSE |
PlaybackStateCompat.ACTION_PLAY_PAUSE |
PlaybackStateCompat.ACTION_SKIP_TO_PREVIOUS |
PlaybackStateCompat.ACTION_STOP |
PlaybackStateCompat.ACTION_SEEK_TO |
PlaybackStateCompat.ACTION_PLAY)
.build();https://stackoverflow.com/questions/51366976
复制相似问题