Android HTTP progressive streaming onBufferingUpdate在几秒钟后停止调用

Android HTTP progressive streaming onBufferingUpdate在几秒钟后停止调用,android,android-mediaplayer,audio-streaming,http-streaming,progressive-download,Android,Android Mediaplayer,Audio Streaming,Http Streaming,Progressive Download,我开发了一个Android音乐播放器应用程序,可以通过HTTP渐进式下载(通过WiFi,使用Apache)流式播放MP3。这是我如何设置MediaPlayer来播放MP3的: mediaplayer.setDataSource(192.168.../song.mp3) 在与服务器的连接断开之前,一切正常。从我注册的onBufferingUpdateListener的日志输出来看,似乎当与服务器的连接断开时(比如,我关闭手机上的WiFi),MediaPlayer会尝试填充其缓冲区中剩余的歌曲。但

我开发了一个Android音乐播放器应用程序,可以通过HTTP渐进式下载(通过WiFi,使用Apache)流式播放MP3。这是我如何设置
MediaPlayer
来播放MP3的:

mediaplayer.setDataSource(192.168.../song.mp3)
在与服务器的连接断开之前,一切正常。从我注册的
onBufferingUpdateListener
的日志输出来看,似乎当与服务器的连接断开时(比如,我关闭手机上的WiFi),
MediaPlayer
会尝试填充其缓冲区中剩余的歌曲。但是,几秒钟后重试停止

换句话说,如果与服务器的连接在丢失几秒钟内没有恢复,
MediaPlayer
将不会恢复缓冲。(即,
onBufferingUpdate()
在重试几秒钟后停止调用)。此外,我在我的
oninfo-listener
onErrorListener
中未收到任何错误/信息消息

问题是:当与服务器的连接再次可用时,无论连续连接之间的时间间隔如何,我如何强制
MediaPlayer
恢复缓冲歌曲的其余部分(最好不中断播放)


有什么办法可以通过HTTP渐进式下载流式播放MP3?

为此,我建议在连接丢失后的特定时间检查连接响应代码,如果您在该时间获得连接,请使用最后缓冲的字节请求服务器。参考: