Android讀取設備內存大小

獲取系統運行內存(RAM)大小:

 public static String getRAMTotalMemorySize(final Context context){
                //獲得ActivityManager服務的對象
                ActivityManager mActivityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
                //獲得MemoryInfo對象
                ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo() ;
                //獲得系統可用內存,保存在MemoryInfo對象上
                mActivityManager.getMemoryInfo(memoryInfo) ;
                long memSize = memoryInfo.totalMem ;
                //字符類型轉換
                String availMemStr = formateFileSize(context,memSize);
               return availMemStr ;

    }

獲取系統可用運行內存(RAM)大小:
 

 public static String getRAMAvaialbeMemorySize(final Context context){
                //獲得MemoryInfo對象
                ActivityManager  mActivityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
                ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo() ;
                //獲得系統可用內存,保存在MemoryInfo對象上
                mActivityManager.getMemoryInfo(memoryInfo) ;
                long memSize = memoryInfo.availMem ;
                //字符類型轉換
                String availMemStr = formateFileSize(context,memSize);
                return availMemStr ;

    }

獲取系統存儲空間(ROM)大小:
 

 public static String getROMTotalSize(final Context context) {
                File path = Environment.getExternalStorageDirectory();
                StatFs stat = new StatFs(path.getPath());
                long blockSize = stat.getBlockSize();
                long totalBlocks = stat.getBlockCount();
                String availMemStr = formateFileSize(context, blockSize * totalBlocks);
                return availMemStr ;

    }

獲取系統可用存儲空間(ROM)大小:

 public static String getROMAvailableSize(final Context context) {
                File path = Environment.getExternalStorageDirectory();
                StatFs stat = new StatFs(path.getPath());
                long blockSize = stat.getBlockSize();
                long availableBlocks = stat.getAvailableBlocks();
                String availMemStr = formateFileSize(context, blockSize * availableBlocks);
                return availMemStr ;

    }

 

    //調用系統函數,字符串轉換 long -String KB/MB
    public static String formateFileSize(Context context,long size){
        return Formatter.formatFileSize(context, size);
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章