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

首頁 > 系統 > Android > 正文

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

2019-10-22 18:24:00
字體:
來源:轉載
供稿:網友

本文實例講述了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開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 曲松县| 皮山县| 崇仁县| 宜黄县| 万全县| 浦东新区| 龙井市| 比如县| 焦作市| 岢岚县| 澄城县| 临夏市| 阿克陶县| 乌拉特后旗| 汉阴县| 河间市| 遂平县| 淮安市| 通州区| 岳阳县| 禄劝| 漳浦县| 天全县| 金门县| 临沧市| 西城区| 措勤县| 澄城县| 麻栗坡县| 上栗县| 雷波县| 昌邑市| 兰坪| 沈丘县| 桐城市| 扶绥县| 德令哈市| 北票市| 平阳县| 桦甸市| 阿鲁科尔沁旗|