实例1

int cnt=0;

final static int kBufferMinSize=1000;

final static int kBufferMaxSize=2000;

StringBuffer strBuffer=new StringBuffer(kBufferMinSize);

StringBuffer strBuffer2=new StringBuffer(kBufferMinSize);

StringBuffer strBuffer3=new StringBuffer(kBufferMinSize);

StringBuffer strBufferNativePss=new StringBuffer(kBufferMinSize);

StringBuffer strBufferDalvikPss=new StringBuffer(kBufferMinSize);

StringBuffer strBufferOtherPss=new StringBuffer(kBufferMinSize);

Debug.MemoryInfo memoryInfo=new Debug.MemoryInfo();

final static String tag="robin";

void printMemory()

{

long totalMemory=Runtime.getRuntime().totalMemory();

long freeMemory=Runtime.getRuntime().freeMemory();

long usedMemory=(totalMemory-freeMemory)>>10;

totalMemory=totalMemory>>10;

freeMemory=freeMemory>>10;

if(strBuffer.length()>kBufferMaxSize)

{

strBuffer.delete(0,strBuffer.length());

strBuffer2.delete(0,strBuffer2.length());

strBuffer3.delete(0,strBuffer3.length());

strBufferNativePss.delete(0,strBufferNativePss.length());

strBufferDalvikPss.delete(0,strBufferDalvikPss.length());

}

strBuffer.append(usedMemory+",");

strBuffer2.append(totalMemory+",");

strBuffer3.append((Debug.getNativeHeapSize()>>10)+",");

Debug.getMemoryInfo(memoryInfo);

strBufferNativePss.append((memoryInfo.nativePss)+",");

strBufferDalvikPss.append((memoryInfo.dalvikPss)+",");

if(cnt++%10==0)

{

Log.i(tag,"usedMemory:"+strBuffer.toString());

Log.i(tag,"totalMemory:"+strBuffer2.toString());

Log.i(tag,"NativeHeapSize:"+strBuffer3.toString());

Log.i(tag,"Native PSS:"+strBufferNativePss.toString());

Log.i(tag,"Dalvik PSS:"+strBufferDalvikPss.toString());

}

}

注意,对于输出的内存信息日志,我们稍作编辑就可以用于在excel产中图表,比便更直观的进行分析。

Android中如何查看内存(下)的更多相关文章

  1. Android中如何查看内存

    文章参照自:http://stackoverflow.com/questions/2298208/how-to-discover-memory-usage-of-my-application-in-a ...

  2. Android中如何查看内存(上)

    文章参照自:http://stackoverflow.com/questions/2298208/how-to-discover-memory-usage-of-my-application-in-a ...

  3. Android中如何查找内存泄露

    1.首先确定是否有内存泄露及哪个程序造成. 1.1.内存泄露已弹出out of memory对话框的情况. 这种情况很简单,直接看对话框就知道是哪个应用的问题了.然后再分析该应用是否是因为内存泄露造成 ...

  4. Android中图片占用内存的计算

    Android中图片占用内存的计算 原文链接 http://blog.sina.com.cn/s/blog_4e60b09d01016133.html   在Android开发中,我现在发现很多人还不 ...

  5. Android中常见的内存泄漏

    为什么会产生内存泄漏? 当一个对象已经不需要再使用了,本该被回收时,而有另外一个正在使用的对象持有它的引用从而导致它不能被回收,这导致本该被回收的对象不能被回收而停留在堆内存中,这就产生了内存泄漏. ...

  6. android手机测试中如何查看内存泄露

    (一) 生成.hprof文件生成.hprof 文件的方法有很多,而且Android 的不同版本中生成.hprof 的方式也稍有差别,我使用的版本的是2.1,各个版本中生成.prof 文件的方法请参考: ...

  7. Android中获取系统内存信息以及进程信息-----ActivityManager的使用(一)

    本节内容主要是讲解ActivityManager的使用,通过ActivityManager我们可以获得系统里正在运行的activities,包括 进程(Process)等.应用程序/包.服务(Serv ...

  8. android 中如何分析内存泄漏

    转载:http://blog.csdn.net/fulinwsuafcie/article/details/8363218 前提条件: 1,电脑安装了java 运行环境 2,手机端开启了 USB 调试 ...

  9. android中常见的内存泄漏和解决的方法

    android中的内存溢出预计大多数人在写代码的时候都出现过,事实上突然认为工作一年和工作三年的差别是什么呢.事实上干的工作或许都一样,产品汪看到的结果也都一样,那差别就是速度和质量了. 写在前面的一 ...

随机推荐

  1. HDU 1848 Fibonacci again and again

    题解:尼姆博弈,对于1至1000计算SG函数,每次取最小的前继值,SG值异或为0则为P-position. #include <cstdio> #include <cstring&g ...

  2. grunt用来压缩前端脚本

    grunt作为一个任务管理工具,提供丰富的插件和强大的自动化管理功能.需要安装node及npm. 主要使用到两个文件,一个是npm的依赖配置文件package.json { "name&qu ...

  3. PHP中用到的一些字符串函数

    /*常用的字符串输出函数   *   * echo()   输出字符串   * print()  输出一个或多个字符串   * die()  输出一条信息,并退出当前脚本   * printf()  ...

  4. python小游戏实现代码

    早上逛CSDN首页就见到这么一篇教程.看了一下很有意思,就马上动手实现了一下.看看效果吧: 完整代码: # -*- coding: utf-8 -*- # 1 - Import library imp ...

  5. virtual 关键字

    virtual 关键字用于修饰方法.属性.索引器或事件声明,并且允许在派生类中重写这些对象.例如,此方法可被任何继承它的类重写. public virtual double Area() { retu ...

  6. STL之queue(单向队列)

    单向队列中的数据是先进先出(First In First Out,FIFO).单向队列一共6个常用函数(front().back().push().pop().empty().size()) #inc ...

  7. js去除首尾空格

    简单的:str = jQuery.trim(str); var temp = " aa b "; console.log("cc" + temp); temp ...

  8. 门面(Facade)模式--医院,保安系统实例

    门面(Facade)模式 http://www.cnblogs.com/zhenyulu/articles/55992.html

  9. 第二节 EAN 8 码 / EAN 13 码

    EAN码的全名为欧洲商品条码(European Article Number),源於西元1977年,由欧洲十二个工业国家所共同发展出来的一种条码.目前已成为一种国际性的条码系统.EAN条码系统的管理是 ...

  10. mysql merge table

    SELECT COUNT(*) FROM `comment` SHOW CREATE TABLE `comment` CREATE TABLE `comment1` ( `id` INT(8) NOT ...