android开发教程之卸载sd卡对MediaServer的处理
2023-06-13 09:15:17 时间
下面这段代码是android中Music中的处理代码:
MediaPlayer.OnErrorListenererrorListener=newMediaPlayer.OnErrorListener(){
publicbooleanonError(MediaPlayermp,intwhat,intextra){
switch(what){
caseMediaPlayer.MEDIA_ERROR_SERVER_DIED:
mIsInitialized=false;
mCurrentMediaPlayer.release();
mCurrentMediaPlayer=newCompatMediaPlayer();
mCurrentMediaPlayer.setWakeMode(MediaPlaybackService.this,PowerManager.PARTIAL_WAKE_LOCK);
mHandler.sendMessageDelayed(mHandler.obtainMessage(SERVER_DIED),2000);
returntrue;
default:
Log.d("MultiPlayer","Error:"+what+","+extra);
break;
}
returnfalse;
}
};
简单来看,就是遇到MediaServerdied这种情况,就release掉原来的MediaPlayer,然后重新创建一个MediaPlayer(会在MediaServer重新启动后关联起来)。然后可以根据原来的状态做相应的动作。
相关文章
- android 置灰不可点击,Android Studio 运行按钮灰色的完美解决方法
- android onresume函数,Android界面跳转时候onDestroy和onResume的调用顺序
- Burp Suite 抓Android手机应用包教程[通俗易懂]
- 基于chromium for android开发Android浏览器
- android开发笔记之 Android代码混淆打包
- android activity singletask,Android Activity启动模式之singleTask实例详解
- android sdk下载安装教程_android studio安装sdk
- 安卓软件反编译教程_android反编译教程
- Android resource linking failed_android:authorities
- android触摸屏事件,Android Touch事件分析
- Android 编译_android线程
- android在eclipse环境下开发需要什么支持_eclipse环境配置教程
- 【错误记录】Android 应用安装后出现两个启动图标 ( 排查应用及依赖库中配置了 android.intent.category.LAUNCHER 的 Activity )
- 【ijkplayer】编译 Android 版本的 ijkplayer ⑤ ( 执行 init-android-libyuv.sh | 执行 init-android-soundtouch.sh )
- 【Android NDK 开发】CMake 中查找链接 Android 自带动态库位置说明 ( ndk-bundleplatformsandroid-29arch-armusrlib )
- Android开发中遇到的问题(二)——新建android工程的时候eclipse没有生成MainActivity和layout布局详解手机开发
- Android中的ProgressBar的android:indeterminate详解手机开发
- Mozilla修改Firefox OS计划 探索兼容Android
- android开发教程之日历项目实践(三)
- Android获取应用程序名称(ApplicationName)示例
- android开发教程之handler异步更新ui
- android开发教程之handle实现多线程和异步处理
- android开发教程之使用looper处理消息队列
- android开发教程之实现listview下拉刷新和上拉刷新效果
- android开发教程之textview内容超出屏幕宽度显示省略号
- android开发教程之用命令启动android模拟器并设置其内存大小
- android开发教程之wifi开发示例
- android开发教程之listview显示sqlite数据
- android开发教程之时间对话框核心代码