Android_02_获取SD卡的可用容量

来源:转载

代码示例如下:

 

package com.itheima.getsdavail;import java.io.File;import android.os.Build;import android.os.Bundle;import android.os.Environment;import android.os.StatFs;import android.app.Activity;import android.text.format.Formatter;import android.view.Menu;import android.widget.TextView;public class MainActivity extends Activity { @SuppressWarnings(deprecation) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize; long totalBlocks; long availableBlocks; //获取当前系统版本的等级 if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2){
 //高版本的Android支持以下操作 blockSize = stat.getBlockSizeLong(); totalBlocks = stat.getBlockCountLong(); availableBlocks = stat.getAvailableBlocksLong(); }
 //低版本的Android支持以下操作 else{ blockSize = stat.getBlockSize(); totalBlocks = stat.getBlockCount(); availableBlocks = stat.getAvailableBlocks(); } TextView tv = (TextView) findViewById(R.id.tv); tv.setText(formatSize(availableBlocks * blockSize)); } private String formatSize(long size) { return Formatter.formatFileSize(this, size); }}

 

 

注:可以通过源码的Setting应用去查看其是如何获取SD卡的剩余空间的,从而通过借鉴到达我们获取SD卡剩余容量的目的 



分享给朋友:
您可能感兴趣的文章:
随机阅读: