2010-12-07 114 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進行測試。

相關問題