다음 코드가 있습니다.
AssetFileDescriptor afd = getAssets().openFd("AudioFile.mp3");
player = new MediaPlayer();
player.setDataSource(afd.getFileDescriptor());
player.prepare();
player.start();
문제는이 코드를 실행하면 요청한 오디오 파일을 재생하는 대신 에셋 디렉토리의 모든 오디오 파일을 알파벳순으로 재생하기 시작한다는 것입니다. 내가 뭘 잘못하고 있죠? 자산 디렉토리에서 오디오 파일을 재생하는 더 좋은 방법이 있습니까?
후속 질문 : 자산 디렉토리에 오디오 파일을 보관하는 것과 res / raw 디렉토리에 보관하는 것 사이에 차이가 있습니까? 자산 디렉토리에 있으면 ID를 얻지 못한다는 사실 외에도. 오디오 파일을 res / raw 폴더로 이동하면 .에 MediaPlayer
대한 id 매개 변수가 없기 때문에 s 를 재사용하는 데 문제가 setDataSource()
있습니다. 이런 종류의 문제를 처리하기위한 좋은 지침을 찾을 수 없습니다.