2010-12-14 149 views
4

中的url,我需要使用URL從服務器下載.mp3或.m4a文件,然後播放該歌曲,如何下載和播放歌曲(.mp3,.m4a)。如果我們知道android

任何想法?

回答

5

試試這個代碼在你的文件:

使用你想要使用的MediaPlayer 並在活動 創建媒體播放器的對象和播放後

url = "your url name+filename.jpg,mp3,etc..." 
FileName = "/sdcard/savefilename" // save in your sdcard 


    try{ 
     java.io.BufferedInputStream in = new java.io.BufferedInputStream(new java.net.URL(url).openStream()); 
     java.io.FileOutputStream fos = new java.io.FileOutputStream(FileName); 
     java.io.BufferedOutputStream bout = new BufferedOutputStream(fos,1024); 
     byte[] data = new byte[1024]; 
     int x=0; 
     while((x=in.read(data,0,1024))>=0){ 
      bout.write(data,0,x);    
     } 
     fos.flush(); 
     bout.flush(); 
     fos.close(); 
     bout.close(); 
     in.close(); 
    } 
    catch (Exception ex) 
    { 
    } 

和。

mp.reset(); 
mp.start(); 

這樣子。

希望這會幫助你很多。

+0

@ Pintu ..它幫助了我很多..謝謝你的答覆..一切都很好,但它在控制檯給予一些警告作爲[2010-12-15 10:11:39 - ddms]亞行拒絕shell命令(ls -l /): [2010-12-15 10:11:54 - ddms]亞行拒絕shell命令(ls -l /): [2010-12-15 10:11:59 - ddms]亞行拒絕shell命令(ls -l /): [2010-12-15 10:18:14 - ddms]亞行拒絕shell命令(ls -l /): [2010-12-15 10:18:19 - ddms]亞行拒絕shell命令(ls -l/sdcard):......... ........請告訴我我必須做什麼? – Venugopal 2010-12-15 04:55:27

+1

您的代碼或虛擬設備出現問題。因爲我沒有從這段代碼中得到任何錯誤。只需檢查一次。 – Pintu 2010-12-20 11:29:42

+0

這段代碼很好,但是如何讓這個下載過程在後臺運行? – cooldeep 2011-02-01 19:26:14

-4

有很多關於如何在android中下載文件的問題。只搜索。

另一方面,您可以使用android的MediaPlayer從互聯網上播放文件而不下載它。

+0

我的任務是在開始時從服務器下載歌曲,然後在本地播放。如果你知道如何以最好的方式做到這一點,可以請這樣引導我嗎? – Venugopal 2010-12-15 04:18:18

相關問題