目录

  • 总存储内存和可用内存
  • 总运行内存和可用运行内存
  • 当前应用使用的运行内存大小
  • 获取应用的缓存大小

总存储内存和可用内存

1、获取手机总存储内存

 /*** 当前的手机总存储内存大小** @return xx GB*/public String getTotalInternalMemorySize(Context context) {File path = Environment.getDataDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long totalBlocks = stat.getBlockCount();return Formatter.formatFileSize(context, totalBlocks * blockSize);}

2、获取手机可用存储内存

 /*** 当前手机可用存储内存大小** @return xx GB*/public String getAvailableInternalMemorySize(Context context) {File path = Environment.getDataDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long availableBlocks = stat.getAvailableBlocks();return Formatter.formatFileSize(context, availableBlocks * blockSize);}

总运行内存和可用运行内存

1、获取手机的总运行内存

 /***   获取android总运行内存大小*   @param context*/public String getTotalMemory(Context context) {String str1 = "/proc/meminfo";// 系统内存信息文件String str2;String[] arrayOfString;long initial_memory = 0;try {FileReader localFileReader = new FileReader(str1);BufferedReader localBufferedReader = new BufferedReader(localFileReader, 8192);str2 = localBufferedReader.readLine();// 读取meminfo第一行,系统总内存大小arrayOfString = str2.split("\\s+");for (String num : arrayOfString) {Log.i(str2, num + "\t");}// 获得系统总内存,单位是KBint i = Integer.valueOf(arrayOfString[1]).intValue();//int值乘以1024转换为long类型initial_memory = new Long((long) i * 1024);localBufferedReader.close();} catch (IOException e) {}return Formatter.formatFileSize(context, initial_memory);// Byte转换为KB或者MB,内存大小规格化}

2、获取手机可用运行内存

     /***  获取android当前可用运行内存大小*  @param context*/public String getAvailMemory(Context context) {ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);ActivityManager.MemoryInfo mi = new ActivityManager.MemoryInfo();am.getMemoryInfo(mi);// mi.availMem; 当前系统的可用内存return Formatter.formatFileSize(context, mi.availMem);// 将获取的内存大小规格化}

当前应用使用的运行内存大小

  /*** 获取当前应用使用的内存大小** @return 单位 MB*/private double sampleMemory() {ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);double mem = 0.0D;try {final Debug.MemoryInfo[] memInfo = activityManager.getProcessMemoryInfo(new int[]{android.os.Process.myPid()});if (memInfo.length > 0) {final int totalPss = memInfo[0].getTotalPss();if (totalPss >= 0) {mem = totalPss / 1024.0D;}}} catch (Exception e) {e.printStackTrace();}return mem;}

获取应用的缓存大小

1、获取应用缓存大小

 /*** 获得缓存大小** @param context* @return* @throws Exception*/public String getTotalCacheSize(Context context) {long cacheSize = 0;try {cacheSize = getFolderSize(context.getCacheDir());if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {cacheSize += getFolderSize(context.getExternalCacheDir());}} catch (Exception e) {e.printStackTrace();}return getFormatSize(cacheSize);}private long getFolderSize(File file) throws Exception {long size = 0;try {File[] fileList = file.listFiles();for (int i = 0; i < fileList.length; i++) {// 如果下面还有文件if (fileList[i].isDirectory()) {size = size + getFolderSize(fileList[i]);} else {size = size + fileList[i].length();}}} catch (Exception e) {e.printStackTrace();}return size;}

2、清除应用缓存

 /*** 清除缓存** @param context*/public void clearAllCache(Context context) {deleteDir(context.getCacheDir());if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {deleteDir(context.getExternalCacheDir());}}private boolean deleteDir(File dir) {if (dir != null && dir.isDirectory()) {String[] children = dir.list();for (int i = 0; i < children.length; i++) {boolean success = deleteDir(new File(dir, children[i]));if (!success) {return false;}}}return dir.delete();}

就这些方法吧,记录下,以防下次需要又找不到了!

Android 如何获取运行内存和总运行内存等相关推荐

  1. 75.android 简单的获取当前可用运行内存,总运行内存,获取包含系统软件在内的所有内存,获取系统参数显示的内存大小。

    //第一步 写个SystemMemory类来获取当前可用运行内存和总运行内存: public class SystemMemory {/*** * 获取android当前可用运行内存大小* * @pa ...

  2. Android 如何获取视频的总时长

    在做视频的时候,往往需要获取视频的总时长,比较常用的就是用getDuration()方法获取,但是在获取的时候总是显示获取到的值为-1,在网上找答案的时候,大多解决方案写的都比较简略,对于我这样入门没 ...

  3. Android 获取手机存储总大小,系统占用空间

    一.Android 存储介绍及通常查询大小 手机存储有两种,内置内存和外置内存(SD),目前可扩展内存的机型正在减少,大部分是内置存储的手机,内置128G.256G已经很常见,但如果有扩展功能的话,买 ...

  4. android 获得ram大小,Android中获取(RAM)总运存大小跟可用运存大小

    Android中获取(RAM)总运存大小和可用运存大小 //获取可用运存大小 private long getAvailMemory(Context context){ // 获取android当前可 ...

  5. Android之获取手机基本信息、内存信息、网路信息、电池信息,等一共18项数据

    获取手机信息,代码复制可用,开发工具为:Android Studio 1.手机品牌 2.手机型号 3.屏幕分辨率 4.像素密度 5.屏幕尺寸 6.Android 系统版本 7.运行内存 8.储存空间 ...

  6. Android之获取应用程序(包)的大小-----PackageManager的使用(二)

    http://blog.csdn.net/qinjuning/article/details/6892054 通过第一部分 << Android中获取应用程序(包)的信息-----Pack ...

  7. android中获取时间

    android中获取时间 1)通过calendar类获取 Calendar calendar = Calendar.getInstance(); int moth = calendar.get(Cal ...

  8. android获取sd的大小,Android实现获取SD卡总容量,可用大小,机身内存总容量及可用大小的方法...

    本文实例讲述了Android实现获取SD卡总容量,可用大小,机身内存总容量及可用大小的方法.分享给大家供大家参考,具体如下: 可能有的同学不知道系统已经提供了获取获取SD卡总容量,可用大小,机身内存总 ...

  9. Android之获取手机IMEI号和IMSI号

    首先我们看一下IMEI号和IMSI号是什么: (1)IMEI(International Mobile Equipment Identity,国际移动身份识别码):是由15位数字组成的"电子 ...

  10. android手机获取系统短信sqlite数据库并查看内容

    一个朋友过来,准备玩玩Ta的android手机,给我之前还要拿回去看看,结果是ta把短信加密了(第三方短信),怕我知道ta的啥见不得人的秘密.o(∩_∩)o 哈哈.TA威胁我说加密了,看我怎么看.结果 ...

最新文章

  1. rsync ssh文件同步
  2. conda 修改缓存路径
  3. C语言 一个字符常量占几个字节
  4. PTA浙大版python程序设计题目集--第1章-2 从键盘输入三个数到a,b,c中,按公式值输出 (30 分)
  5. 北漂周记--第2记--培训开始
  6. VIVOtech:使用近场通信(NFC)技术的免接触付款解决方案的市场领导者
  7. 在物欲横流,心浮气躁的今天,毕业生靠什么来维持自己的梦想?
  8. python单向链表和双向链表的图示代码说明
  9. elementui 弹窗 显示详细信息_ElementUI中el-table双击单元格事件并获取指定列的值和弹窗显示详细信息...
  10. 下列哪个python语句是正确的_Python笔试面试题_牛客(待完善)
  11. PHP的日期时间函数date()
  12. c语言sizeof输出单位,急,求大神!C语言中sizeof问题
  13. python能做什么工作知乎-python能做什么知乎
  14. 【支付宝商家中心】支付功能签约,产品签约失败;修改经营类目;系统检测到您的账户不符合国家相关法律法规或《支付宝用户服务协议》约定
  15. 德尔菲法 Delphi 专家判断
  16. 史上最经典摇滚柔情曲15首
  17. pygame小项目 ~ 3 :Python完成简易飞机大战
  18. nodejs+express解决微信公众号token验证失败
  19. outs.write(baos.toByteArray()) 内存溢出
  20. 假如易立竞吐槽程序员。。。

热门文章

  1. 187. 导弹防御系统
  2. sitemap网站地图制作思路
  3. 【B站弹幕游戏开发笔记02】Win10系统下给Python项目导入Protobuf
  4. 万年历—Java计算感恩节是哪天?感恩节是哪一天?2017年感恩节是哪一天?
  5. 系统版本aplpha,Beta等表示的意思
  6. 在Ubuntu5.1中安装NVIDIA TNT2 M64老式显卡驱动程序..
  7. Word打开和关闭速度均很慢的解决方法
  8. 第二章-FPGA的概要-《FPGA的原理与结构》
  9. 乌班图nginx访问php 变成下载
  10. 实验吧-web-天下武功唯快不破