如何实时监视sd卡的状态啊,比如SD卡被拔掉

bigpretty 2010-09-17 11:36:19
我现在就是想知道SD卡被拔出的时候通知我.我用了广播接收,但是不可能.求代码.谢谢
请高手们帮帮
...全文
293 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bigpretty 2010-09-17
  • 打赏
  • 举报
回复
哦,你是如何实现的?有代码吗?我怎么还是接收不到,我是新手.谢谢拉
Hero_Cat 2010-09-17
  • 打赏
  • 举报
回复
当sd卡被播出的时候,系统是会发出广播的。
你可以接受这广播做相应的处理。

这点是绝对可能的。因为已经实现过了,
关键代码:
intentFilter.addAction(Intent.ACTION_MEDIA_EJECT);
intentFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);
intentFilter.addAction(Intent.ACTION_MEDIA_REMOVED);
intentFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
然后注册接收器,接收广播就可以了。
bigpretty 2010-09-17
  • 打赏
  • 举报
回复
下面是我的主要代码?还有那些需要注意的吗?
MyBroadcastReceiver mReceiver = new MyBroadcastReceiver();
IntentFilter intentFilter =new IntentFilter();
intentFilter.addAction(Intent.ACTION_MEDIA_EJECT);
intentFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);
intentFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
intentFilter.addAction(Intent.ACTION_MEDIA_BAD_REMOVAL);
registerReceiver(mReceiver, intentFilter);
private class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(Intent.ACTION_MEDIA_EJECT)) {
Log.i("", "hava no sdacrd");
} else if (action.equals(Intent.ACTION_MEDIA_BAD_REMOVAL)) {
Log.i("", "hava no sdacrd1");
} else if (action.equals(Intent.ACTION_MEDIA_UNMOUNTED)) {
Log.i("", "hava no sdacrd2");

} else if (action.equals(Intent.ACTION_MEDIA_REMOVED)) {
Log.i("liuyou", "hava no sdacrd3");
}
}
}

80,490

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧