在做一个视频播放器,遇到一问题,就是正常可以播放的文件,重新在播放列表中点击的时候,应该会跳到播放界面正常播放,但是有时候点击之后会进到onErrorListener()回调里面,这是什么情况,搞不清楚问题出在哪里,请高人给点思路?
解决方案 »
- webview中网页调用js出错
- 在Android中如何使用valgrind
- android3.0 调用WEBSERVICE很慢,2.3没问题
- Activity中重写的onCreate方法中的形参(Bundle savedInstanceState)代表什么?
- json数组嵌套
- Intent的Flags有何作用?
- 新人请教,关于Android程序出错意外关闭的找错方法
- 开始学android,但是没有java基础,有c#基础
- 想找一个自定义ImageView控件用来显示网络图片的缩略图
- 怎么样在ContentResolver中把扫描Video和Audio文件的语句结合为一句话?
- android new DefaultHttpClient().execute(request)异常,求救
- 快崩溃了,android调用带参数的.net web service 问题
MediaPlayer.OnErrorListener errorListener = new MediaPlayer.OnErrorListener() {
public boolean onError(MediaPlayer mp, int what, int extra) {
switch (what) {
case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
if (!mQuietMode) {
Toast.makeText(MediaPlaybackService.this, R.string.mediaplayer_failed, Toast.LENGTH_SHORT).show();
}
mIsInitialized = false;
mCurrentMediaPlayer.release();
if (mNextMediaPlayer != null){
mNextMediaPlayer.release();
}
// Creating a new MediaPlayer and settings its wakemode does not
// require the media service, so it's OK to do this now, while the
// service is still being restarted
mCurrentMediaPlayer = new CompatMediaPlayer();
mCurrentMediaPlayer.setWakeMode(MediaPlaybackService.this, PowerManager.PARTIAL_WAKE_LOCK);
mHandler.sendMessageDelayed(mHandler.obtainMessage(SERVER_DIED), 2000);
return true;
default:
Log.d("MultiPlayer", "Error: " + what + "," + extra);
// Reset status of mediaplayer
mIsInitialized = false;
if (null != mCurrentMediaPlayer) {
mCurrentMediaPlayer.reset();
}
if (null != mNextMediaPlayer) {
mNextMediaPlayer.reset();
} if (!mQuietMode) {
Toast.makeText(MediaPlaybackService.this, R.string.unknown_failed, Toast.LENGTH_SHORT).show();
}
break;
}
return false;
}
};