首页
社区
课程
招聘
2
[原创分享一款Android辅助利器
发表于: 2017-9-11 14:16 17672

[原创分享一款Android辅助利器

2017-9-11 14:16
17672

一.前言:

二.用法:

    以微信发送消息为例,如果我们想要知道微信点击发送到消息发送结束,这段时间都有哪些JAVA函数运行了,它的调用流程,那么我们就可以进行这样:

    首先我们在手机上,向测试账号发送一句test:


  在点击发送之前,需要启动ddms,并且在devices栏目表中找到com.tencent.mm,,并且点击start Method Profiling,选择trace based profiling,并且点击OK:

    Android 调试工具ddms的devices栏目存在一个功能叫做start method profiling,此按钮顾名思义是启动method profiling的,而Android的Method Profiling功能,是可以在一段时间内记录所有运行过的函数,最后生成一个xxx.trace文件。xxx.trace文件比较有趣,如果分析andorid源码可以知道,xxx.trace文件按线程和时间记录了method的enter和exit事件。也就是说,如果我们能够读取xxx.trace文件,那么我们就能够获取到某段时间,某个app运行过的java函数

二.用法:

    以微信发送消息为例,如果我们想要知道微信点击发送到消息发送结束,这段时间都有哪些JAVA函数运行了,它的调用流程,那么我们就可以进行这样:

    首先我们在手机上,向测试账号发送一句test:


  在点击发送之前,需要启动ddms,并且在devices栏目表中找到com.tencent.mm,,并且点击start Method Profiling,选择trace based profiling,并且点击OK:



     然后在手机上点击发送,将消息发送给测试账号。点击stop Method Profiling,我们会获取到一个xxx.trace, 找到trace文件,并且启动TraceReader工具。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 2
支持
分享
赞赏记录
参与人
雪币
留言
时间
PLEBFE
为你点赞~
2023-2-11 04:00
你瞒我瞒
为你点赞~
2020-11-20 10:44
最新回复 (77)
雪    币: 465
活跃值: (564)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
谢谢楼主的分享。
2017-9-11 15:10
0
雪    币: 108
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
2017-9-11 15:55
0
雪    币: 2053
活跃值: (1947)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
有这种操作。学习了、感谢楼主无私分享
2017-9-11 17:28
0
雪    币: 108
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
youxiaxy 有这种操作。学习了、感谢楼主无私分享
是啊,Android自带神器,
2017-9-11 17:51
0
雪    币: 283
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢分享~
2017-9-11 18:01
0
雪    币: 878
活跃值: (496)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
刚好有这需求
2017-9-11 18:16
0
雪    币: 195
活跃值: (185)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
为这种操作点赞!!
2017-9-11 20:14
0
雪    币: 4687
活跃值: (388)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
支持潘神,这就开源放出来了
2017-9-11 20:19
0
雪    币: 0
活跃值: (55)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
DDMS对于目前的手机好像看不到进程,有什么可以解决的办法吗
2017-9-12 08:43
0
雪    币: 108
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
11
wx_逝水流年 DDMS对于目前的手机好像看不到进程,有什么可以解决的办法吗
可以参考这个xposed插件https://github.com/deskid/XDebug
2017-9-12 09:01
0
雪    币: 64
活跃值: (99)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
晚上睡前看了帖子,早上起来弄了下..过程完美,源代码阅读中~!~
2017-9-12 09:39
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
给潘大佬点赞
2017-9-12 09:57
0
雪    币: 108
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
呵呵来了 晚上睡前看了帖子,早上起来弄了下..过程完美,源代码阅读中~!~
源码比较坑
2017-9-12 10:01
0
雪    币: 108
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
wx_高小厨 给潘大佬点赞[em_48]
2017-9-12 10:01
0
雪    币: 130
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
DDMS产生的trace文件默认存放的路径在哪?请教一下
2017-9-12 10:26
0
雪    币: 108
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
17
vincent汪 DDMS产生的trace文件默认存放的路径在哪?请教一下
C:\Users\lenovo\AppData\Local\Temp
2017-9-12 10:29
0
雪    币: 130
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
panhw C:\Users\lenovo\AppData\Local\Temp
谢谢,就是不知道怎么改路径,我一般都直接在DDMS里看调用顺序,然后找目标函数
2017-9-12 10:39
0
雪    币: 9
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
pan哥那几天居然在研究这个呀
2017-9-12 14:46
0
雪    币: 40
活跃值: (690)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
赞,就需要这样的老哥  稳
2017-9-13 10:18
0
雪    币: 223
活跃值: (500)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
赞一个,这个牛
2017-9-13 10:47
0
雪    币: 1795
活跃值: (2539)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
22
好,大赞!
2017-9-16 16:56
0
雪    币: 1385
活跃值: (1636)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
23
2017-9-17 11:29
0
雪    币: 387
活跃值: (1171)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
24
赞,赞,赞,重要的赞三遍
2017-9-17 19:57
0
雪    币: 7
活跃值: (268)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
666
2017-9-18 12:30
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册