我有这段代码:
try
{
mMusicPlayer.reset();
FileInputStream fis = new FileInputStream(pathToTitleFile);
mMusicPlayer.setDataSource(fis.getFD());
mMusicPlayer.prepareAsync();
}
catch (Exception e){}
当我跳过一首歌时,有时会出现两个 Error/error(-38,0)。 我已经对其进行了调试,并且在以下代码部分引发了错误: reset() 调用后的错误 (-38,0)。调用 prepareAsync() 后的 Error(-38,0)。 在此之后,播放器调用 onPrepare() 回调并跳回并再次执行 try-block。在播放歌曲之前会重复几次。 奇怪的是,我没有得到关于错误的任何其他信息,错误 (-38,0) 似乎是一个“一般错误”。
最佳答案
基于此处 MediaPlayer reset
将 MediaPlayer 重置为未初始化状态。调用此方法后,您必须通过设置数据源并调用 prepare() 来再次初始化它。
需要重新初始化MediaPlayer
关于android - Mediaplayer 在 reset() 和 prepareAsync() 调用时抛出 Error(-38,0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10450065/