현재 노래를 반복하는 의 onCompletion
수신기에 다음 코드를 사용하고 있습니다.MediaPlayer의 데이터 소스 설정 메소드에서 IllegalStateException이 발생했습니다.
if (isRepeat) {
if (mMediaPlayer.isPlaying()) {
mMediaPlayer.stop();
mMediaPlayer.reset();
}
try {
mMediaPlayer.setDataSource(MainActivity.localTrackList.get(MainActivity.currentOffset).getPath());
mMediaPlayer.prepareAsync();
} catch (IOException e) {
e.printStackTrace();
}
}
하지만 다음과 같은 오류 메시지를 받고 있어요,
at android.media.MediaPlayer._setDataSource(Native Method)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1115)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1100)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1079)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1028)
나는이 밖으로 정렬 할 수있는 방법을
?
prepareAsync 것은 저 작동하지 :
은 (https://developer.android.com/reference/android/media/MediaPlayer.html#StateDiagram 찍은)이 상태도를 참조. 왜 이런 일이 일어 났는지 설명해 주시겠습니까? – Rino