Debug.startMethodTracing() 使用注意:

Debug.startMethodTracing() 和 Debug.stopMethodTracing(); 必须成对出现。
我们在Application attachBaseContext 里面开启了startMethodTracing,然后在主页面的onResume 里面stopMethodTracing 发现最后是没有生成trace 文件的。

    @Overrideprotected void attachBaseContext(Context base) {if (!hasStartMethod) {Debug.startMethodTracing("/sdcard/zy_start.trace");hasStartMethod = true;}
     onResume(){Debug.stopMethodTracing();}

后来想通了,因为是多进程程序,那么startMethodTracing 会执行多次,而主页面的onResume 只会执行一次,导致,最后没有生成trace.

多进程,尝试以代码下:

    private boolean hasStartMethod = false;@Overrideprotected void attachBaseContext(Context base) {if (!hasStartMethod) {Debug.startMethodTracing("/sdcard/zy_start.trace");hasStartMethod = true;}

其实也是不行的,因为对于多进程,每个变量hasStartMethod 都是 false;

所以,多进程在application 里面抓trace,只能在attachBaseContext里面start, 在onCreate 里面stop,
保证成对出现。

methodTrace 原理
https://zhuanlan.zhihu.com/p/115127052

Debug.startMethodTracing() 没有生成trace文件相关推荐

  1. android的dmtracedump工具生成trace文件图片 'dot' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    http://jingyan.baidu.com/article/c910274bfa6c1fcd361d2df7.html http://www.cnblogs.com/albert1017/p/3 ...

  2. oracle 大量trace,Trace文件过量生成问题解决

    随着Oracle技术本身的不断发展,"自动化"和"智能化"的数据库时代已经来临.无论是运维管理.开发调试,传统DBA们的工作内容都已经发生了很大变化.一些诸如内 ...

  3. 【Oracle】利用trace文件重建控制文件

    重建步骤: 1.生成trace文件: alter database backup controlfile to trace; 2.找到生成的trace文件: show parameter dump u ...

  4. MethodTrace 生成的trace文件为空

    今天我准备生成一个trace文件,看看程序卡在哪里. 一般: Debug.startMethodTracing("yuge"); Debug.stopMethodTracing() ...

  5. Trace文件过量生成问题解决

    查看用户临时文件(trace文件)所在位置 如果是trace文件(.trc)大导致的 SQL>show parameters user_dump_dest 在路径下查看 alert_log 文件 ...

  6. 【Android CPU 优化】Android CPU 调优 ( Trace 文件分析 | Android Profiler 工具 | CPU Profiler 工具 )

    文章目录 一.Android CPU 优化 二.CPU Profiler 工具 三.相关资源 一.Android CPU 优化 在 Android 中 , 出现 动画掉帧 , 页面切换白屏 , 卡顿 ...

  7. 【Android 性能优化】应用启动优化 ( 方法追踪代码模板 | 示例项目 | SD 卡访问权限 | 示例代码 | 获取 Trace 文件 | Android Studio 查看文件)

    文章目录 一. 方法追踪代码模板 二. 追踪 Launch 页面的 onCreate 方法执行情况 1. 示例项目 2. SD 卡访问权限问题 ( 动态权限申请 ) 3. MainActivity o ...

  8. android .trace 文件,android - 了解Android应用程序的.trace文件 - SO中文参考 - www.soinside.com...

    我的应用程序给出ANR弹出窗口.为了找出使用此行生成sample.trace文件的原因:Debug.startMethodTracing("sample"); 在我的活动的onCr ...

  9. logback无法生成日志文件之谜

    前言 spring一般需要打印日志,不然无法定位问题,也会增加调试难度,而目前和spring搭配的比较火的日志库是logback 使用方法很简单,直接在该位置加入一个xml的配置文件即可(配置文件示例 ...

最新文章

  1. 改变Jupyter的默认项目路径
  2. 穷人靠力,富人借力!看完你将明白一切!
  3. 解构产品经理的技术思维
  4. (转) RabbitMQ学习之延时队列
  5. MySQL 事物的4种隔离级别
  6. 因下面文的损坏或丢失windows/system32/config/system 解决方法
  7. Leetcode 34.排序数组中的第一个元素和最后一个元素
  8. 含参变量正常积分_含参变量的积分
  9. 介绍 PostgreSql 两个有用的比较操作
  10. ZigBee Dotdot
  11. keil5图标变成白色_桌面图标出现白块,显示图标异常的解决方法
  12. 如何查询本机的内网IP地址
  13. 20200801猿辅导笔试记录
  14. 3. Python控制结构
  15. C++整型int转字符串string
  16. 关系型数据库是什么?
  17. linux 第二十天 linuxprobe
  18. Netkiller的足迹
  19. 虚拟办公室,节省运营成本
  20. 僵尸网络之如何防护DDoS攻击,愿这个世界再无黑产

热门文章

  1. gitee使用svn_Gitee SVN支持
  2. php扩展swoole安装,php 安装swoole扩展
  3. matlab中实时脚本与纯代码脚本
  4. 三星自动驾驶汽车路测获批,进军无人驾驶领域
  5. 【Unity/Kinect】获取预制的手势信息KinectInterop.HandState
  6. iis 发布MVC HTTP错误 403.14
  7. android sqlite 怎么写入存储时间
  8. rails3 cookie setting
  9. mvc学习-编辑提交需要注意-mvc重点
  10. NotePad++列编辑