本文執行個體講述了Android實現擷取SD卡總容量,可用大小,機身記憶體總容量及可用大小的方法。分享給大家供大家參考,具體如下:
可能有的同學不知道系統已經提供了擷取擷取SD卡總容量,可用大小,機身記憶體總容量及可用大小的系統方法,用系統原始碼提供的方法可以很簡單,方便的擷取其大小。這裡我把系統原始碼中的一個方法貼出來,供大家參考一下:
圖片:
圖片上紅色方框中的代碼就是原始碼中擷取SD卡大小的程式方法。
在這裡我整理了一下,我把我整理封裝好的方法給大家貼出來:
/** * 獲得SD卡總大小 * * @return */ private String getSDTotalSize() { File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSize(); long totalBlocks = stat.getBlockCount(); return Formatter.formatFileSize(MainActivity.this, blockSize * totalBlocks); } /** * 獲得sd卡剩餘容量,即可用大小 * * @return */ private String getSDAvailableSize() { File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSize(); long availableBlocks = stat.getAvailableBlocks(); return Formatter.formatFileSize(MainActivity.this, blockSize * availableBlocks); } /** * 獲得機身記憶體總大小 * * @return */ private String getRomTotalSize() { File path = Environment.getDataDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSize(); long totalBlocks = stat.getBlockCount(); return Formatter.formatFileSize(MainActivity.this, blockSize * totalBlocks); } /** * 獲得機身可用記憶體 * * @return */ private String getRomAvailableSize() { File path = Environment.getDataDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSize(); long availableBlocks = stat.getAvailableBlocks(); return Formatter.formatFileSize(MainActivity.this, blockSize * availableBlocks); }
希望本文所述對大家Android程式設計有所協助。