2011-01-21 2 views
1
내가

안드로이드 목록 오디오 및 재생이

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

지금 내가

처럼 지나가는 내가 그것을 할 수있는 목록에서 특정 파일을 재생하려면 사용 sdcard에있는 오디오 파일 정보를 얻고

MediaPlayer mediaPlay = new MediaPlayer(); 
    mediaPlay.setDataSource(this,Uri.withAppendedPath(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, "/"+id)); 

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

재생할 파일을 얻을 수있는 해결책을 제안하십시오.

+0

위의 코드에 문제가 있습니까? logcat을 게시하십시오. 또한 try 및 catch 문을 사용하여 플레이어가 prepare, start 또는 setDataSource의 위 단계 중 어느 단계에서 실패했는지 파악할 수 있습니다. 오류는 http://developer.android.com/reference/android/media/MediaPlayer.html#setDataSource(java.lang.String)에서 확인할 수 있습니다. – Sriram

답변

2

최근 crsrSdcard_ringtone이 setDataSource()와 함께 사용할 수있는 파일을 재생하는 데 유용한 파일에 실제 경로 (/sdcard/Doorbell.mp3)를 포함 할 때 _data 필드 1에 대해 알게되었습니다. MediaPlayer의 기능