public class MobileMemoryActivity extends Activity {
private Button mButton;
private TextView mTextView;
private ProgressBar mProgressBar;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mobile_memory);
mButton = (Button) findViewById(R.id.mobile_memory_Button);
mTextView = (TextView) findViewById(R.id.mobile_memory_TextView);
mProgressBar = (ProgressBar) findViewById(R.id.mobile_memory_ProgressBar);
mButton.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
showSize();
}
});
}
private void showSize(){
mTextView.setText("");
mProgressBar.setProgress(0);
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
File path = Environment.getExternalStorageDirectory();
StatFs statFs = new StatFs(path.getPath());
//取得block的size
long blockSize = statFs.getBlockSize();
//取得总容量
long tatalBlock = statFs.getBlockCount();
//取得可用容量
long availableBlock = statFs.getAvailableBlocks();
String[] total = fileSize(blockSize*tatalBlock);
String[] available = fileSize(blockSize*availableBlock);
//计算可用容量所占比例,在进度条上的显示值
int ps = Integer.parseInt(available[0])*mProgressBar.getMax()/Integer.parseInt(total[0]);
mProgressBar.setProgress(ps);
String text = "总共:"+total[0]+" "+ total[1]+"\n"
+"可用:"+available[0]+""+available[1];
mTextView.setText(text);
}
}
private String[] fileSize(long size){
String str = "";
if(size>=1024){
str="kb";
size/=1024;
if(size>=1024){
str="mb";
size/=1024;
}
}
DecimalFormat df = new DecimalFormat();
df.setGroupingSize(3);
String[] ss = new String[2];
ss[0] = df.format(size);
ss[1] = str;
return ss;
}
}
分享到:
相关推荐
android手机查询存储卡剩余容量 (Environment 加 StatFs)
StatFs可以获取存储卡的空间大小以及剩余空间大小。DecimalFormat可以实现把数字划分为一定的格式。 具体程序如下: import java.io.File; import java.text.DecimalFormat; import android.app.Activity; import ...
Android获取手机内置存储SDCard的使用情况,包括SD卡容量、已使用大小,剩余容量大小等信息,将获取的过程写入按钮... Toast.makeText(Sample_10_7.this, "对不起,请先插入存储卡", Toast.LENGTH_LONG).show(); }
SDCard存储卡在 Android 手机上是可以随时插拔的,每次的动作都会引起Android系统ACTION_BROADCAST,本例子将计算出 SDCard 的剩余容量和总容量。供测试的sd卡中存了两首歌和一个30M的文件,现在检测剩余的空间正好...
* @return 内置SDCard剩余存储空间MB数 */ private float getAvailableExternalMemorySize() { String path = getExternalMemoryPath();// 获取数据目录 StatFs stat = getStatFs(path); return ...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
SEND 6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
6.8 存储卡剩余多少容量——Environment加StatFs 6.9 访问本机内存与存储卡——File的创建与删除 6.10 实现可定时响起的闹钟——PendingIntent与AlarmManager的运用 6.11 黑名单来电自动静音——PhoneStateListener...
众所周知,Android的手机上的信息大部分都是可以通过代码获取的,比如说爱奇艺的离线储存功能上有一个最大储存大小/剩余储存大小的功能。 获取SD卡上的储存信息: /** * 获得SD卡总大小 * * @return */ ...