[英]Getting error in Media Player. MediaPlayer(8743): Error (-38,0)
我目前正在开发Media Player。 我有URL,并且正在像设置媒体播放器。 但是我得到以下错误:
E/MediaPlayer(8743): stop called in state 0
E/MediaPlayer(8743): error (-38, 0)
代码是:
public void onPlayClick(View view) {
Object obj = view.getTag();
if (obj != null && obj.getClass() == RowItem.class) {
final RowItem rowItem = (RowItem) obj;
if (!rowItem.mPlayer.isPlaying()) {
invalidatePlayButtons(rowItem.mPosition);
try {
rowItem.mPlayer.reset();
rowItem.mPlayer.setDataSource(rowItem.mTrack.getAboluteFilePath());
Log.d("RINGTONE","File path = "+rowItem.mTrack.getAboluteFilePath());
rowItem.mPlayer.prepare();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
rowItem.mPlayer.start();
rowItem.mPlayer
.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.stop();
rowItem.mPlayButton
.setImageResource(R.drawable.play);
}
});
rowItem.mProgressBar.setProgress(0);
rowItem.mProgressBar.setMax(rowItem.mPlayer.getDuration());
showAnimation(rowItem);
rowItem.mTrack.setPlaying(false);
} else {
invalidatePlayButtons(-1);
}
}
}
如果您正在使用媒体播放器,则还应该使用此代码释放媒体播放器
mp = MediaPlayer.create(FallAnimationActivity.this,
sounds[fakeindex]);
mp.start();
mp.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.release();// you missed this code
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.