1

我正在尝试使用 setDataSource 从互联网流式传输实时音频,但是当我添加 url 时,它说这是一个未处理的异常.. 有什么想法吗?

String daytonPolice = "http://relay.radioreference.com:80/691484064";
MediaPlayer mp = new MediaPlayer();
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource(daytonPolice); // It will not take the string of my url
mp.prepareAsync();
mp.start();
4

1 回答 1

2

问题是因为您在调用 prepareAsync() 之后立即调用 start()。您需要设置一个 onPreparedListener:

String daytonPolice = "http://relay.radioreference.com:80/691484064";
MediaPlayer mp = new MediaPlayer();

mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {

    @Override
    public void onPrepared(MediaPlayer mp) {
        mp.start();
    }
});

mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource(daytonPolice); // It will not take the string of my url
mp.prepareAsync();
于 2013-03-20T03:52:33.550 回答