从URL播放音频文件时出错

时间:2019-11-04 14:00:44

标签: android android-mediaplayer

String url = "http://23.101.29.94:1111/text1.mp3";
    MediaPlayer mediaPlayer = new MediaPlayer();
    mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    try {
        mediaPlayer.setDataSource(url);
    } catch (IOException e) {
        e.printStackTrace();
    }
    try {
        mediaPlayer.prepare();
    } catch (IOException e) {
        e.printStackTrace();
    }
    mediaPlayer.start();

运行时:

2019-11-04 20:55:31.221 13816-13816/com.example.loginlogout E/MediaPlayerNative: start called in state 0, mPlayer(0xe9a85440)
2019-11-04 20:55:31.221 13816-13816/com.example.loginlogout E/MediaPlayerNative: error (-38, 0)
2019-11-04 20:55:31.235 13816-13816/com.example.loginlogout E/MediaPlayer: Error (-38,0)

但是此网址(http://23.101.29.94:1111/text1.mp3)在浏览器中运行良好,我该如何解决

1 个答案:

答案 0 :(得分:1)

您需要使用监听器在mediaPlayer.start()方法中调用onPrepared。 侦听器可以简单地通过

附加
mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
    @Override
    public void onPrepared(MediaPlayer mp) {
        mediaPlayer.start();
    }
});