国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android開發實現的內存管理工具類

2019-12-12 01:43:33
字體:
來源:轉載
供稿:網友

本文實例講述了Android開發實現的內存管理工具類。分享給大家供大家參考,具體如下:

/*********************************************** * 內存管理工具 * * @author chen.lin * @version 1.0 ************************************************/public class MemoryManager {  private static final String TAG = "MemoryManager";  private static final int MAXMEMORY=300*1024*1024;//程序運行的最大內存 模擬器(0-16m)  /**   * 判斷系統是否在低內存下運行   * @param context   * @return   */  public static boolean hasAcailMemory() {    // 獲取手機內部空間大小    long memory = getAvailableInternalMemorySize();    Log.i(TAG, memory+"");    if (memory < MAXMEMORY) {      //應用將處于低內存狀態下運行      return false;    } else {      return true;    }  }  /**   * 獲取手機內部可用空間大小   *   * @return   */  @SuppressWarnings("deprecation")  public static long getAvailableInternalMemorySize() {    File path = Environment.getDataDirectory();// 獲取 Android 數據目錄    StatFs stat = new StatFs(path.getPath());// 一個模擬linux的df命令的一個類,獲得SD卡和手機內存的使用情況    long blockSize = stat.getBlockSize();// 返回 Int ,大小,以字節為單位,一個文件系統    long availableBlocks = stat.getAvailableBlocks();// 返回 Int ,獲取當前可用的存儲空間    return availableBlocks * blockSize;  }  /**   * 獲取手機內部空間大小   *   * @return   */  @SuppressWarnings("deprecation")  public static long getTotalInternalMemorySize() {    File path = Environment.getDataDirectory();    StatFs stat = new StatFs(path.getPath());    long blockSize = stat.getBlockSize();    long totalBlocks = stat.getBlockCount();// 獲取該區域可用的文件系統數    return totalBlocks * blockSize;  }  /**   * 獲取手機外部可用空間大小   *   * @return   */  @SuppressWarnings("deprecation")  public static long getAvailableExternalMemorySize() {    if (externalMemoryAvailable()) {      File path = Environment.getExternalStorageDirectory();      StatFs stat = new StatFs(path.getPath());      long blockSize = stat.getBlockSize();      long availableBlocks = stat.getAvailableBlocks();      return availableBlocks * blockSize;    } else {      throw new RuntimeException("Don't have sdcard.");    }  }  /**   * 獲取手機外部空間大小   *   * @return   */  @SuppressWarnings("deprecation")  public static long getTotalExternalMemorySize() {    if (externalMemoryAvailable()) {      File path = Environment.getExternalStorageDirectory();// 獲取外部存儲目錄即 SDCard      StatFs stat = new StatFs(path.getPath());      long blockSize = stat.getBlockSize();      long totalBlocks = stat.getBlockCount();      return totalBlocks * blockSize;    } else {      throw new RuntimeException("Don't have sdcard.");    }  }  /**   * 外部存儲是否可用   *   * @return   */  public static boolean externalMemoryAvailable() {    return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);  }}

更多關于Android相關內容感興趣的讀者可查看本站專題:《Android開發之內存與緩存技巧總結》、《Android資源操作技巧匯總》、《Android視圖View技巧總結》、《Android編程之activity操作技巧總結》、《Android文件操作技巧匯總》、《Android開發入門與進階教程》及《Android控件用法總結

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赣榆县| 永平县| 历史| 伊吾县| 朔州市| 天水市| 潜江市| 广南县| 贵德县| 绥中县| 方城县| 屏东县| 托克逊县| 辽中县| 额尔古纳市| 女性| 德庆县| 汪清县| 湛江市| 渑池县| 绥中县| 庆云县| 车险| 德江县| 天气| 扶余县| 江门市| 北海市| 宁陵县| 西安市| 通州区| 邢台县| 保靖县| 赤城县| 阿荣旗| 宁河县| 通海县| 准格尔旗| 莒南县| 盐山县| 汾西县|