2010-12-07 115 views
0

我正在播放播放MP3流的代码,代码如下;播放MP3流时出现MediaPlayer错误

try 
{ 
    URL url = new URL("streamURL"); 
    URLConnection con = url.openConnection(); 
    con.connect(); 
    con.getContent(); 
    MediaPlayer mp = new MediaPlayer(); 
    mp.setDataSource(con.getURL().toString()); 
    mp.prepare(); 
    mp.start(); 
} 
catch(Exception e) 
{ 
} 

原油,但我只是在一分钟内玩耍。此代码在模拟器中正常工作,但在Galaxy S上运行时,我在日志文件中发现错误“Command PLAYER_INIT with an error or info -105”。

有没有人遇到过这个,这是银河特有的东西?

提前许多感谢,

尼尔。

+0

你没有找到办法做到这一点? – Pabluez 2011-10-15 12:27:12

回答

0

尝试,而不是下面,看看这是否正常工作(未经测试):

try { 
    URL url = new URL("streamURL"); 
    URLConnection con = url.openConnection(); 
    con.connect(); 
    con.getContent(); 
    MediaPlayer mp = MediaPlayer.create(this, Uri.parse(con.getURL.toString())); 
    mp.start(); 
} catch(Exception e) { } 
+0

非常感谢您的回复。您的代码会产生相同的错误。我不得不修改你的创作; MediaPlayer.create(this,Uri.parse(con.getURL.toString())),因为它期望将上下文作为第一个参数。 – Neil 2010-12-07 17:45:12

1

我猜,你是想直接播放的.PLS或类似的东西。

尝试了这一点:

1:代码

mediaPlayer = MediaPlayer.create(this, Uri.parse("http://vprbbc.streamguys.net:80/vprbbc24.mp3")); 
mediaPlayer.start(); 

2:.PLS文件

这个网址是从BBC只是作为一个例子。它是在Linux上,我下载了

wget http://foo.bar/file.pls 

,然后我用vim打开一个文件.PLS(使用你喜欢的编辑器)和我已经看到了这个文件中的真实的URL。不幸的是,并非所有的.pls文件都是纯文本文件。

使用android 1.6和2.2进行测试。

相关问题