91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android獲取系統儲存以及內存信息的方法(二)

發布時間:2020-10-21 14:26:37 來源:腳本之家 閱讀:245 作者:肖旺銀 欄目:移動開發

Android獲取儲存信息以及內存信息可以用adb命令查看。

adb查看系統內存信息以及儲存信息:

命令:adb shell cat /proc/meminfo

Android獲取系統儲存以及內存信息的方法(二)

代碼:

 private static final String FILENAME_PROC_MEMINFO = "/proc/meminfo";
/**
 * 獲取手機內存總大小
 * @return
 */
 public static String getTotalMemorySize() {
    try {
      FileReader fr = new FileReader(FILENAME_PROC_MEMINFO);
      BufferedReader br = new BufferedReader(fr, 2048);
//      String memoryLine = br.readLine();
      String subMemoryLine = "";
      String Line = "";
      while ((Line = br.readLine()) != null)
      {
        if (Line.contains("MemTotal:")){
          subMemoryLine = Line.substring(Line.indexOf("MemTotal:"));
          break;
        }

      }
      br.close();
      Matcher mer = Pattern.compile("^[0-9]+$").matcher(subMemoryLine.replaceAll("\\D+", ""));
      //如果為正整數就說明數據正確的,確保在Double.parseDouble中不會異常
      if (mer.find()) {
        long memSize = Integer.parseInt(subMemoryLine.replaceAll("\\D+", "")) ;
        double mem = (Double.parseDouble(memSize + "")/1024)/1024;
        NumberFormat nf = new DecimalFormat( "0.0 ");
        mem = Double.parseDouble(nf.format(mem));
        //Log.e(LOG_TAG,"=========mem================ " + mem);
        return String.valueOf(mem);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }
    return "Unavailable";
  }

  /**
   * 獲取手機剩余內存大小
   * @return
   */
  public static String getFreeMemorySize() {
    try {
      FileReader fr = new FileReader(FILENAME_PROC_MEMINFO);
      BufferedReader br = new BufferedReader(fr, 2048);
//      String memoryLine = br.readLine();
      String subMemoryLine = "";
      String Line = "";
      while ((Line = br.readLine()) != null)
      {
        if (Line.contains("MemFree:")){
          subMemoryLine = Line.substring(Line.indexOf("MemFree:"));
          break;
        }

      }
      br.close();
      Matcher mer = Pattern.compile("^[0-9]+$").matcher(subMemoryLine.replaceAll("\\D+", ""));
      //如果為正整數就說明數據正確的,確保在Double.parseDouble中不會異常
      if (mer.find()) {
        long memSize = Integer.parseInt(subMemoryLine.replaceAll("\\D+", "")) ;
        double mem = (Double.parseDouble(memSize + "")/1024)/1024;
        NumberFormat nf = new DecimalFormat( "0.0 ");
        mem = Double.parseDouble(nf.format(mem));
        //Log.e(LOG_TAG,"=========mem================ " + mem);
        return String.valueOf(mem);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }
    return "Unavailable";
  }

adb 獲取手機儲存大小:

命令:adb shell cat /proc/partitions

Android獲取系統儲存以及內存信息的方法(二)

代碼:

private static final String FILENAME_PROC_EMMCINFO = "/proc/partitions";
 /**
   * 獲取手機儲存大小
   * @return
   */
 public static String getEmmcSize() {
    try {
      FileReader fr = new FileReader(FILENAME_PROC_EMMCINFO);
      BufferedReader br = new BufferedReader(fr, 2048);
      String Line = "";
      String EmmcSize = "";
      while ((Line = br.readLine()) != null)
      {
        if (Line.length() >7 && Line.lastIndexOf(" ") > 0) {
          if (Line.substring(Line.lastIndexOf(" ") + 1 , Line.length()).equals("mmcblk0"))
          {

            EmmcSize = removeAllSpace(Line);
            break;
          }
        }

      }
      br.close();
      if (EmmcSize.length() >7 ){
        EmmcSize = (String) EmmcSize.subSequence(4, EmmcSize.length()-7);

        Matcher mer = Pattern.compile("^[0-9]+$").matcher(EmmcSize);
        //如果為正整數就說明數據正確的,確保在Double.parseDouble中不會異常
        if (mer.find()) {
          double mem = (Double.parseDouble(EmmcSize)/1024)/1024;
          NumberFormat nf = new DecimalFormat( "0.0 ");
          mem = Double.parseDouble(nf.format(mem));
          return String.valueOf(mem);
        }
      }
      return "0";
    } catch (IOException e) {
      e.printStackTrace();
    }
    return "Unavailable";
  }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丘北县| 易门县| 银川市| 金川县| 伊金霍洛旗| 三都| 秭归县| 萝北县| 柳河县| 安龙县| 宣恩县| 沛县| 历史| 荥经县| 古蔺县| 法库县| 临湘市| 北海市| 本溪市| 灵石县| 凤台县| 鄂尔多斯市| 辰溪县| 青冈县| 郯城县| 林西县| 赞皇县| 江孜县| 青岛市| 甘泉县| 漳州市| 阿拉善左旗| 五河县| 南华县| 岳西县| 峡江县| 马龙县| 新和县| 崇义县| 于田县| 高台县|