【问题标题】:Android Media session playbackstate doesn’t notify position updatesAndroid Media session 播放状态不通知位置更新
【发布时间】:2020-04-04 03:34:18
【问题描述】:

Android 媒体会话播放状态在暂停和播放后不通知位置更新。 GetPlaybackPosition() 返回在暂停播放期间设置的相同位置。有什么线索吗?谢谢。

【问题讨论】:

  • 当我在 youtube 上寻找或快进/快退 10 秒视频然后媒体会话正确返回 getPosition() 时,我想在此处添加另一点。
  • 首先,编辑您的原始问题,而不是在 cmets 部分添加信息。其次,请发布一些代码以帮助我们了解您想要做什么,以及您是如何尝试的。

标签: android media-player android-progressbar android-mediasession mediaplayback


【解决方案1】:

您必须在播放/暂停媒体时调用 MediaSession.setPlaybackState(PlaybackState 状态)为当前 MediaSession 设置新的播放状态。因此,当您调用 getPlaybackPosition() 时,它将返回更新的状态。 每当您播放/暂停媒体时,然后通过调用 MediaPlayer.getCurrentPosition() 获取当前位置并将其设置为当前 MediaSession。像这样的

PlaybackState state = new PlaybackState.Builder()
                .setState(PlaybackState.STATE_PLAYING,
                        MediaPlayer.getCurrentPosition(), PLAYBACK_SPEED)
                .build();
MediaSession.setPlaybackState(state);

【讨论】:

    猜你喜欢
    • 2011-11-26
    • 2022-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    相关资源
    最近更新 更多