2012-06-15 87 views
1

我正在開發音樂應用程序,並且想要在URI設置爲datasource時播放歌曲。但setDataSource不接受String.I,這意味着我們如何編寫URI爲特定的ID。 下面是代碼:將URI設置爲數據源時,Android不播放歌曲

MediaPlayer mp = new MediaPlayer(); 
mp.reset(); 
String sel = MediaStore.Audio.Media._ID+"=166"; 
mp.setDataSource(context,sel); 
mp.prepare(); 
mp.start(); 

這裏166是​​我的電話特定歌曲的ID。

回答

1

嘗試設置你的開放的正確

使用

Uri fileUri = ContentUris.withAppendedId(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, 166); 
mp.setDataSource(context, fileUri); 

使用MediaStore.Audio.Media.INTERNAL_CONTENT_URI如果你的音頻使用被存儲在你的設備的內部存儲

+1

感謝。它的工作很棒。相反,第二行應改爲'mp.setDataSource(context,fileUri);' –

+0

是!已更新以包含上下文作爲參數 – dymmeh