我开发了一款Android音乐播放器应用程序,可以通过HTTP渐进式下载(通过WiFi,使用Apache)来传输MP3。这就是我设置MediaPlayer
以流式传输MP3的方式:
mediaplayer.setDataSource(192.168.../song.mp3)
一切正常,直到与服务器的连接丢失。从我注册的onBufferingUpdateListener
的日志输出中,似乎当与服务器的连接丢失时(例如,我关闭了手机上的WiFi),MediaPlayer
尝试填写其中的剩余歌曲缓冲。但是几秒后这个重试就会停止。
换句话说,如果与服务器的连接在丢失后的几秒内没有恢复,MediaPlayer
将不恢复缓冲。 (即onBufferingUpdate()
在重试几秒后停止调用)。另外,我在onInfoListener
或onErrorListener
。
问题是:当与服务器的连接无论何时再次可用时,如何强制MediaPlayer
恢复缓存歌曲的其余部分(最好不中断播放)连续连接之间的间隔?
通过HTTP渐进式下载流式传输MP3有哪些替代方法?