您的位置:首页 > 其它

如何获取手机sd可用空间大小和手机内存可用空间大小

2015-06-13 23:43 561 查看
package com.luo.safemobile;

import android.annotation.TargetApi;
import android.app.Activity;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.os.StatFs;
import android.text.format.Formatter;
import android.util.Log;
import android.widget.TextView;

public class AppMangerActivity extends Activity {

private TextView tv_avail_rom;
private TextView tv_avail_sd;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_app_manger);
tv_avail_rom=(TextView)findViewById(R.id.tv_avail_rom);
tv_avail_sd=(TextView)findViewById(R.id.tv_avail_sd);
long sdSize =0;
sdSize = getAvailSpace(Environment.getExternalStorageDirectory().getAbsolutePath());
long romSize=getAvailSpace(Environment.getDataDirectory().getAbsolutePath());

//现在手机都不在支持sd扩充了,设置成手机内存和sd卡内存是一样的大小
tv_avail_sd.setText("sd卡的可用空间:"+ Formatter.formatFileSize(this,sdSize));
tv_avail_rom.setText("内存可用空间:"+Formatter.formatFileSize(this,romSize));

}

@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
private long getAvailSpace(String path){

StatFs statFs=new StatFs(path);
long count=statFs.getAvailableBlocksLong();
long  size=statFs.getBlockSizeLong();
return count*size;

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: