关于VideoView无法监听视频播放时缓冲或者卡顿状态的解决办法

[code lang=”js”]
final Handler handler = new Handler();
Runnable runnable = new Runnable() {
public void run() {
int duration = videoView.getCurrentPosition();
if (old_duration == duration && videoView.isPlaying()) {
videoMessage.setVisibility(View.VISIBLE);
} else {
videoMessage.setVisibility(View.GONE);
}
old_duration = duration;

handler.postDelayed(runnable, 1000);
}
};
handler.postDelayed(runnable, 0);
[/code]

只需要判断当前播放位置与下一秒播放位置是否相等即可。所以通过这个方法即可实现使用VideoView监听缓冲状态,来实现出现缓冲中的提示了。不过,响应还是有点慢的。(默认是1秒)可以更改这里的时间来缩短响应时间。我使用的是0.5秒。

其他地方看到的,非常不错的思路啊

–每天一点点