Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android MediaPlayer停止下载后仍继续下载_Android_Android Mediaplayer - Fatal编程技术网

Android MediaPlayer停止下载后仍继续下载

Android MediaPlayer停止下载后仍继续下载,android,android-mediaplayer,Android,Android Mediaplayer,我正在使用android.media.MediaPlayer从互联网播放mp3流。我正在使用以下代码: public void update(String url) { try { player.stop(); player.reset(); player.setDataSource(url); player.prepare(); player.play(); } catch (IOException

我正在使用android.media.MediaPlayer从互联网播放mp3流。我正在使用以下代码:

public void update(String url) {
    try {
        player.stop();
        player.reset();
        player.setDataSource(url);
        player.prepare();
        player.play();
    } catch (IOException exc) {
        exc.printStackTrace();
    }
}

它工作正常,只是在调用update时不断从旧流下载数据,因此会导致不必要的高数据使用率。因此,我的问题是:如何正确地停止MediaPlayer,使其停止下载?

如果要重用MediaPlayer实例,请不要调用stop,而是调用reset。谢谢,我不知道这一点,但无论如何,问题仍然存在。我想知道是否会发生这种情况,因为当您通过新的URL路径并准备它时,它不应该下载旧的流。你是如何确认它发生的?该流的比特率为128kbps,当我播放第一个流时,数据使用率为128kbps。但是当我以相同的比特率播放第二个流时,这会增加到256kbps,当第三个流URL被传递到更新时,使用率是384kbps,依此类推。你能告诉我你是如何捕获比特率的吗?