Android dump的使用2

来源:互联网 发布:1hhhh.com域名升级 编辑:程序博客网 时间:2024/05/19 13:09

由于dumpsys命令只能dump出有限的几个service,例如SurfaceFlinger,window

那么其他类中的dump函数如何使用呢


以WindowManagerService相关的WindowState和WindowAnimator为例


PrintWriter pw = new PrintWriter(System.out, true);WindowState win = windows.get(i);WindowStateAnimator winAnimator = null;win.dump(pw, "××××", true);winAnimator = win.mWinAnimator;winAnimator.dump(pw, "×××× ", true);

dump函数一般需要3个参数,第一个PrintWriter,通过System.out构造就可以将log输出到logcat中

第二个参数是一个前缀,随便写成什么字符串都可以,方便你阅读

第三个参数是dumpall,true/false。设置dump函数中是否输出全部信息

这个变量可以到dump函数中去修改


dump的好处是如果程序挂掉,你想看到挂掉之前的一些变量值,在不能debug的情况下,就非常方便了

其他类中的dump的使用当然就都是类似了,是不是还很简单。

但是我这坑爹的脑袋竟然搞了好久才发现^ ^


再拿ActivityManagerService举个例子

ActivityManagerService中有如下函数

@Override
    protected void dump(FileDescriptor fd, PrintWriter pw, String[] args)


那么这个函数如何使用呢

在你需要dump的代码处加入如下代码即可


String dumpFilePath = "/sdcard/dumpfile.txt";        File dumpFile = null;        FileOutputStream osDump = null;        try {            dumpFile = new File(dumpFilePath);            osDump = new FileOutputStream(dumpFilePath);            FileDescriptor fdout = osDump.getFD();            PrintWriter pw = new PrintWriter(System.out, true);            String [] args = {"-a", "a"};            dump(fdout, pw, args);  // aaaaaaaaaaaaaaaaaaaa wang.yang            args [1] = "p";            dump(fdout, pw, args);            osDump.close();        } catch (FileNotFoundException fnfe) {        } catch (IOException ioe) {        } finally {        }


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 肛门上长了个肉疙瘩怎么办 脚撞了一下肿了怎么办u 怀孕9个月同床了怎么办 结婚两年了都没怀孕怎么办 怀孕快40周了没有生的迹象怎么办 生完小孩掉头发很厉害怎么办 我27岁欠50多万怎么办 8岁童牙齿摔松了怎么办 我的眉毛后半边很稀少怎么办 剑三95修为满了怎么办 21三体综合症临界高风险怎么办 率土之滨没地了怎么办 老公有外遇怎么办他还舍不得小三 11选5输了6万 怎么办 k宝密码忘了怎么办5次 k宝密码输错5次怎么办 上火了牙疼怎么办怎样快速止疼 身体不吸收营养胖不起来怎么办 突然牙疼怎么办教你立刻止疼 蛀牙疼怎么办教你立刻止疼 做了牙套的牙疼怎么办 牙疼怎么办教你立刻止疼 七个月宝宝便秘拉不出来怎么办 喝酒脸上起了很多小红疙瘩怎么办 我的脸又痒又红怎么办 脸又红又痒又烫怎么办 满脸痘痘怎么办全部都是红的 身上起大片扁疙瘩很痒怎么办 我急用钱借钱又借不到怎么办 小孩蛀牙牙疼怎么办教你立刻止疼 牙齿里面长了个小牙齿怎么办 2岁宝宝又吐又拉怎么办 u盘坏了怎么办没反应了 怀孕了不知道孩子是谁的怎么办 怀孕八个月耻骨疼的厉害怎么办 没感情了这段婚姻该怎么办 1岁半宝宝o型腿怎么办 4s店没按时交车怎么办 几天几夜睡不着觉没有睡意怎么办 辣的吃多了胃疼怎么办 喉咙痛怎么办有最好即简单好得快