android开发教程之卸载sd卡对MediaServer的处理
下面这段代码是android中Music中的处理代码:
MediaPlayer.OnErrorListener errorListener = new MediaPlayer.OnErrorListener() {
public boolean onError(MediaPlayer mp, int what, int extra) {
switch (what) {
case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
mIsInitialized = false;
mCurrentMediaPlayer.release();
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);
break;
}
return false;
}
};
简单来看,就是遇到MediaServer died这种情况,就release掉原来的MediaPlayer,然后重新创建一个MediaPlayer(会在MediaServer重新启动后关联起来)。然后可以根据原来的状态做相应的动作。相关阅读:
在Linux中恢复被删除的文件的教程
asp.net实现上传图片时判断图片的模式GRB或CMYK的方法
javascript中Date format(js日期格式化)方法小结
解析Android中如何做到Service被关闭后又自动启动的实现方法
Android可循环显示图像的Android Gallery组件用法实例
jQuery事件处理的特征(事件命名机制)
js调试系列 断点与动态调试[基础篇]
详解DB2 sqlstate 57016 SQLCODE=-668 原因码 "7"错误的快速解决办法
最小化安装CentOS 6.X之后需要做的配置
Java并发编程之性能、扩展性和响应
Mybatis与Ibatis的区别
PHP实现微信公众平台音乐点播
C#提取网页中超链接link和text部分的方法
jQuery动态添加删除select项(实现代码)