android各种获取sdcard状态
来源:互联网 发布:淘宝手机优惠券 编辑:程序博客网 时间:2024/05/16 05:48
安卓程序在对sdcard操作时,常常需要先获取sdcard的当前状态,常见的sdcard状态获取和判断取有如下方法
<span style="font-size:18px;">/** 获取存储卡路径 */ File sdcardDir=Environment.getExternalStorageDirectory(); /** StatFs 看文件系统空间使用情况 */ StatFs statFs=new StatFs(sdcardDir.getPath()); /** Block 的 size*/ Long blockSize=statFs.getBlockSize(); /** 总 Block 数量 */ Long totalBlocks=statFs.getBlockCount(); /** 已使用的 Block 数量 */ Long availableBlocks=statFs.getAvailableBlocks(); /** 格式化可用大小 */Formatter.formatFileSize(getApplicationContext(), availableBlocks);</span>
通过广播机制判断当前sdcard的状态
注册sdcard状态广播:
private void initSDCard() {IntentFilter intentFilter = new IntentFilter();intentFilter.setPriority(1000);// 设置最高优先级intentFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);// sd卡被插入,且已经挂载intentFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);// sd卡存在,但还没有挂载intentFilter.addAction(Intent.ACTION_MEDIA_REMOVED);// sd卡被移除intentFilter.addAction(Intent.ACTION_MEDIA_SHARED);// sd卡作为// USB大容量存储被共享,挂载被解除intentFilter.addAction(Intent.ACTION_MEDIA_BAD_REMOVAL);// sd卡已经从sd卡插槽拔出,但是挂载点还没解除// intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_STARTED);// 开始扫描// intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED);// 扫描完成intentFilter.addDataScheme("file");registerReceiver(sdCardReceiver, intentFilter);// 注册监听函数}
定义sdcard状态广播:
private final BroadcastReceiver sdCardReceiver = new BroadcastReceiver(){@Overridepublic void onReceive(Context context, Intent intent) {String action = intent.getAction();if (action.equals("android.intent.action.MEDIA_REMOVED")// 各种未挂载状态|| action.equals("android.intent.action.MEDIA_UNMOUNTED")|| action.equals("android.intent.action.MEDIA_BAD_REMOVAL")|| action.equals("android.intent.action.MEDIA_SHARED")) {finish();Toast.makeText(MainContentActivity.this, "SD卡已被拔出,本地数据没法初始化!",Toast.LENGTH_SHORT).show();}}};
1 0
- android各种获取sdcard状态
- 【Android】监听sdcard状态
- Android 获取sdcard音乐文件
- Android 获取sdcard音乐文件
- Android各种机型,各种系统版本,如何获取外置SDCard路径
- android 获取手机的各种状态
- 获取Android手机各种状态信息
- android 获取蓝牙各种连接状态
- Android监听手机sdcard状态
- Android 获取外置SDcard路径
- 获取android SDCard存储大小
- 获取android SDCard存储大小
- android遍历获取sdcard文件
- android sdcard各种存储路径解惑
- Android判断SD卡状态及获取各种文件目录
- Android获取内置sdcard跟外置sdcard路径
- Android获取内置sdcard跟外置sdcard路径
- 【android】查看手机内存状态和sdcard卡内存状态
- gcc编译出现”undefined reference to `pcap_parse’”
- QUnit使用入门
- 方正东亚•遵义道桥流动资金贷款集合资金信托计划
- Android提供的LruCache类简介
- 最喜欢此等大杀器
- android各种获取sdcard状态
- java 之split 字符串转成字符串数组
- Invalidate(TRUE)与Invalidate(FALSE)区别
- iOS6 内存警告
- NYOJ40一笔画问题
- 获得资源数组
- Windows下用户如何获取管理员权限
- UITableView(基本)--补全分割线 _tableView.separatorInset =UIEdgeInsetsZero
- 第六章 线程