gpt4 book ai didi

暂停时 Android mediaPlayer seekTo 不工作

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:16:22 24 4
gpt4 key购买 nike

seekTo() 方法在 mediaPlayer 播放时效果很好。如果 mediaPlayer 暂停,当我寻找一个位置并调用 start() 时,它会从暂停的地方开始播放。

我的代码如下,在logcat中,我可以看到它在寻找。

@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
if(player == null || player.mediaPlayer == null){
return;
}
Log.e("player status", "status is " + PlayerStatusCache.playerStatus);

if(durationProgress < player.mediaPlayer.getDuration()){
player.mediaPlayer.seekTo(durationProgress);
Log.e("player", "seeking");
} else {
player.mediaPlayer.seekTo(player.mediaPlayer.getDuration() - 1000);
}
}

最佳答案

由于某些设备上的某些原因:SystemClock.sleep(200) 是必需的,因为 onSeekComplete(MediaPlayer arg0) 在 seekTo 真正完成之前被播放器调用得太早.

 mMediaPlayer.setOnSeekCompleteListener(new MediaPlayer.OnSeekCompleteListener() {
@Override
public void onSeekComplete(MediaPlayer arg0) {
Log.d(TAG, "onSeekComplete() current pos : " + arg0.getCurrentPosition());
SystemClock.sleep(200);
mMediaPlayer.start();
}
});
try {
mMediaPlayer.seekTo(mCurrentPos);
} catch (IllegalStateException e){
Log.d(TAG, e.getLocalizedMessage(), e);
}

关于暂停时 Android mediaPlayer seekTo 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22398853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com