【发布时间】:2019-01-02 01:06:49
【问题描述】:
我需要使用媒体播放器播放 .M3U 网址,但它不起作用: 这是我的代码:
final MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mediaPlayer.setDataSource("http://xxxxxxxxx/1.m3u");
} catch (IOException e) {
e.printStackTrace();
}
try {
mediaPlayer.prepare(); // might take long! (for buffering, etc)
} catch (IOException e) {
e.printStackTrace();
}
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mediaPlayer.start();
}
});
我已阅读有关 stackoverflow 的所有相关问题,但这对我没有帮助,
我也尝试使用这种方法提取 .M3U:
public ArrayList<String> readURLs(String url) {
if (url == null) return null;
ArrayList<String> allURls = new ArrayList<String>();
try {
URL urls = new URL(url);
BufferedReader in = new BufferedReader(new InputStreamReader(urls
.openStream()));
String str;
while ((str = in.readLine()) != null) {
allURls.add(str);
}
Toast.makeText(this, allURls + "", Toast.LENGTH_SHORT).show();
Log.d("URL", String.valueOf(allURls));
in.close();
return allURls;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
但是当我调用它时它也不起作用
readURLs ("http://xxxxxxx.m3u");
所以请帮帮我。
提前致谢!
【问题讨论】:
-
堆栈跟踪是什么?
-
@TiagoOrnelas 感谢您的关心,请在下面找到logcat错误:
E/MediaPlayer: error (1, -2147483648) 07-25 12:18:26.474 11277-11833/com.app.app E/MediaPlayer-JNI: QCMediaPlayer mediaplayer NOT present 07-25 12:18:26.513 11277-11833/com.app.app E/MediaPlayer: Should have subtitle controller already set -
您之前是否测试过 .m3u 链接,例如:
http://109.94.2.96:8888/1.m3usince 以上帖子无法解决我的问题