Android开发之初级开发_读取手机或者SD卡容量
布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/showsize" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" /> <TextView android:id="@+id/showphonesize" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/showsize" /> </RelativeLayout>
源代码:
import java.io.File; import android.os.Bundle; import android.os.Environment; import android.os.StatFs; import android.app.Activity; import android.text.format.Formatter; import android.widget.TextView; public class MainActivity extends Activity { private TextView showsize, showphone; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); showsize = (TextView) findViewById(R.id.showsize); showphone = (TextView) findViewById(R.id.showphonesize); GetSDsize(); GetPhonesize(); } private void GetPhonesize() { File path = Environment.getDataDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSize(); long totalBlocks = stat.getBlockCount(); long availableBlocks = stat.getAvailableBlocks(); long totalphonesize = blockSize * totalBlocks; long avaiphonetotal = blockSize * availableBlocks; String totalphone = Formatter.formatFileSize(this, totalphonesize); String avaiphone = Formatter.formatFileSize(this, avaiphonetotal); showphone.setText("手机总容量:" + totalphone + "\n" + "手机剩余容量:" + avaiphone); } private void GetSDsize() { File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSize(); long totalBlocks = stat.getBlockCount(); long avaiSize = stat.getAvailableBlocks(); long totalsize = blockSize * totalBlocks; long avaitotal = blockSize * avaiSize; String total = Formatter.formatFileSize(this, totalsize); String avai = Formatter.formatFileSize(this, avaitotal); showsize.setText("SD卡总容量:" + total + "\n" + "SD剩余容量:" + avai); } }

浙公网安备 33010602011771号