目录
1. 错误log
在Android Studio使用 Mediaplayer 播放本地音频,在第二次调用mediaPlayer.setDataSource() 时报错如下:
...
java.lang.IllegalStateException
at android.media.MediaPlayer._setDataSource(Native Method)
at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1337)
...
2. 错误原因
该异常表示,当前对客户端的响应已经结束,不能在响应已经结束(或说消亡)后再向 客户端(实际上是缓冲区)输出任何内容。
3. 解决方法
使用 reset() 可解决 java.lang.IllegalStateException 问题。
在 mediaPlayer.setDataSource(path); 之前加一句:
mediaPlayer.reset();即可