Android 判断SD卡是否存在及容量查询
Android 判断SD卡是否存在及容量查询的简单方法如下:
首先要在AndroidManifest.xml中增加SD卡访问权限
- <!-- 在SDCard中创建与删除文件权限 -->
- <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
- <!-- 往SDCard写入数据权限 -->
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
SD卡是否存在
- private boolean ExistSDCard() {
- if (android.os.Environment.getExternalStorageState().equals(
- android.os.Environment.MEDIA_MOUNTED)) {
- return true;
- } else
- return false;
- }
SD卡剩余空间
- public long getSDFreeSize(){
- //取得SD卡文件路径
- File path = Environment.getExternalStorageDirectory();
- StatFs sf = new StatFs(path.getPath());
- //获取单个数据块的大小(Byte)
- long blockSize = sf.getBlockSize();
- //空闲的数据块的数量
- long freeBlocks = sf.getAvailableBlocks();
- //返回SD卡空闲大小
- //return freeBlocks * blockSize; //单位Byte
- //return (freeBlocks * blockSize)/1024; //单位KB
- return (freeBlocks * blockSize)/1024 /1024; //单位MB
- }
SD卡总容量
- public long getSDAllSize(){
- //取得SD卡文件路径
- File path = Environment.getExternalStorageDirectory();
- StatFs sf = new StatFs(path.getPath());
- //获取单个数据块的大小(Byte)
- long blockSize = sf.getBlockSize();
- //获取所有数据块数
- long allBlocks = sf.getBlockCount();
- //返回SD卡大小
- //return allBlocks * blockSize; //单位Byte
- //return (allBlocks * blockSize)/1024; //单位KB
- return (allBlocks * blockSize)/1024/1024; //单位MB
- }
分类:
android提高篇
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2015-11-07 - 通过 UIBezierPath 做一个中空的扫描器
2015-11-07 swift:打造你自己的折线图
2015-11-07 Swift 自定义炫酷下拉刷新效果
2015-11-07 IOS SWIFT基本画图教程
2013-11-07 Java中的String和StringBuffer