解决方案 »
- 新人求助:HelloWorld
- 使用SurfaceView 控件做界面,但按BACK键时不会触发surfaceCreated事件。
- 关于activity的问题!
- 求一个应用程序:实现记事本功能:编辑,删除,保存,打开存在的文件
- 图上用的是TabActivity?
- Could not find *.apk在android1.5中的解决办法
- 应用程序管理的0字节程序
- android 图片立体翻转效果
- android中用jsoup技术解析html后用listview分条显示
- android开发者看过来!一个关于微信某功能的讨论!
- 在校学生请教大牛 通过实时视频数据经FME 转码给FMS 后 ,android 如何获取数据并调用多媒体播放
- android开发 仿美团团购顶部的下拉菜单的问题
public long getAvailaleSize(){
File path = Environment.getExternalStorageDirectory(); //取得sdcard文件路径
StatFs stat = new StatFs(path.getPath());
/*获取block的SIZE*/
long blockSize = stat.getBlockSize();
/*空闲的Block的数量*/
long availableBlocks = stat.getAvailableBlocks();
/* 返回bit大小值*/
return availableBlocks * blockSize;
//(availableBlocks * blockSize)/1024 KIB 单位
//(availableBlocks * blockSize)/1024 /1024 MIB单位 }
这种方法获得的依然是内置sd卡的路径,但是外置的怎么获取呢?假设我的pad可以插两个sd卡怎么办?
这种方法获得的依然是内置sd卡的路径,但是外置的怎么获取呢?假设我的pad可以插两个sd卡怎么办?下面这个是我找到的方法,这可以获得android上所有的存储设备的路径,是所有的,包括usbotg等。有没有什么办法可以区分出来哪个是外置sd卡的吗??
StorageManager sm = (StorageManager) MainActivity.this.getSystemService(Context.STORAGE_SERVICE);
// 获取sdcard的路径:外置和内置
try {
paths = (String[])sm.getClass().getMethod("getVolumePaths", null).invoke(sm, null);
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}