权限问题
判断Sdcard剩余空间
Sdcard一般存放较大的文件和一些安全性不高的文件
<user-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
硬性编码问题:通过Environment获取Sdcard的路径
Environment.getExternalStoragerDirectory().getPath();
判断Sdcard状态
if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
//Sdcard状态是没有挂在的情况
}
判断Sdcard剩余空间
//判断Sdcard存储空间是否满足文件的存储
File sdcard_filedir = Enironment.getExternalStorageDirectory(); //得到Sdcard的目录 作为一个文件对象
long usableSpace = sdcard_filedir.getUsableSpace();// 获取文件目录对象剩余空间
long totalSpace = sdcard_filedir.getTotalSpace();
//将一个long类型的文件大小格式化成用户可以看懂的M,G字符串
String usableSpace_str = Formatter.formatFileSize(mContext, usableSpace);
String totalSpace_str = Formatter.formatFileSize(mContext, totalSpace);
if(usableSpace < 1024 * 1024 * 200){//判断剩余空间是否小于200M
Toast.makeText(mContext, "sdcard剩余空间不足,无法满足下载;剩余空间为:"+usableSpace_str, Toast.LENGTH_SHORT).show();
return ;
}
Sdcard一般存放较大的文件和一些安全性不高的文件