我正在开发与媒体服务器联系的应用程序。所以,我有一个填充媒体 URL 的数组。媒体类型为mp3.
我有一个ListView每一行表示一个数组的单元格。当每行收到点击事件时,它应该运行setDataSource,prepare并且startMediaPlayer。第一次,我点击一行,一切正常,媒体流成功。但是,当我在最后一个媒体播放时单击另一个时,error (1,-114)就会发生。
基于MediaPlayer,我知道setDataSource应该在IdleMediaPlayer 的状态下运行,因此,在设置数据源之前,我调用reset以移动到Idle状态。
try {
mediaPlayer.reset();
mediaPlayer.setDataSource(getMusicUrl());
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
mediaPlayer.prepareAsync();
我执行OnErrorListener,错误详情如下:
What: 1 MEDIA_ERROR_UNKNOWN
Extra: -114(我还没有找到任何关于这个错误的文档)
谁能帮我解决这个问题?