我正在构建一个从网络播放流式 m3u 文件的应用程序。
我正在使用 mediaPlayer 类并且它可以工作。 代码如下:
String test_path = "http://cast.idvps.com:8000/djwirya.m3u";
try {
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(test_path);
mediaPlayer.prepareAsync();
} catch (IOException e) {Log.e("Error", "No Stream");}
mediaPlayer.start();
它运行得很好。但是,过了一会儿我又编译了一遍,却没有声音了。
请帮忙......谢谢
最佳答案
您需要在prepareAsync()之前调用mediaPlayer.setOnPreparedListener(this)。这假设您的 Activity 或其他任何内容已经实现了 OnPreparedListener 接口(interface)。然后您需要一个名为 onPrepared() 的回调,您可以在其中调用 mediaPlayer.start()。
您需要做的另一件事是确保在应用程序结束时在某个地方调用 mediaPlayer.release() 。 onPause() 内部可能是个好主意。
关于Android 使用 mediaPlayer 播放 m3u 流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6730702/