2011-01-21 50 views
1

我得到使用机器人名单音播放

cr = getContentResolver(); 
crsrSdcard_ringtone = cr.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, 
    null, MediaStore.Audio.Media._ID); 

现在我想从播放列表中特定文件,我可以做到这一点与通过它像

在SD卡中的音频文件信息
MediaPlayer mediaPlay = new MediaPlayer(); 
    mediaPlay.setDataSource(this,Uri.withAppendedPath(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, "/"+id)); 

mediaPlay.prepare(); 
mediaPlay.start(); 

请提出解决方案来获取正在播放的文件。

+0

上面的代码有问题吗?请发布logCat。此外,您可能想尝试使用try和catch语句来确定您的播放器是否在上述任何准备,启动或setDataSource阶段中失败。错误可以在这里找到:http://developer.android.com/reference/android/media/MediaPlayer.html#setDataSource(java.lang.String) – Sriram 2011-01-21 06:30:24

回答

2

我最近才知道关于_data字段没有1在游标返回crsrSdcard_ringtone将包含真正的路径(/sdcard/Doorbell.mp3)文件,这将是有用的播放该文件,我们可以使用setDataSource() MediaPlayer的功能