2013-01-06 90 views
2

在我的應用程序/ RES /生/文件夾中,我有:file1.ogg file2.ogg ... fileN.ogg安卓播放音頻文件在/ RES /按文件名原始

在本地數據庫中,我要的文件名,即file1 file2 ... fileN引用。

鑑於其中一個字符串,比如說fileM,如何播放fileM.ogg中包含的音頻?在這裏尋找相關的Java代碼。

這裏是我看着迄今:

String name = "plumber"; 
String link = "/res/raw/" + name + ".ogg"; 

try { 
    mp.setDataSource(link); //earlier: mp = new MediaPlayer(); 
    mp.prepare(); 
    mp.start(); 
} catch (Exception e) { 
    Toast.makeText(PlayScreen.this, "ERROR: audio player not working.", Toast.LENGTH_LONG).show(); 
} 

我在祝​​酒收到錯誤消息。此外,我已經嘗試了link字符串,其中沒有「/ res/raw」。

謝謝。

回答

4
MediaPlayer player = new MediaPlayer(); 
String path = "android.resource://"+packagename+"/raw"+filename; 
try { 
    player.setDataSource(context, Uri.parse(path)); 
    player.prepare(); 
    player.start(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

嘗試帶或不帶進一步擴展」 .MP3"

希望我可以幫助你

我認爲應該是這樣的樣品在http://en.kuma-de.com/blog/2011-11-14/341

+1

是的,我認爲是這樣的正確的想法。我發現這個網站也很有幫助:http://en.kuma-de.com/blog/2011-11-14/341 – JDS

+0

我很抱歉我給了一個downvote,現在我不能改變它...請編輯你的回答,並通知我,讓我可以upvote .. –

+0

謝謝它的工作... –