Android代码逻辑执行顺序分析库AppMethodOrder

来源:互联网 发布:centos打包iso文件 编辑:程序博客网 时间:2024/05/24 06:56
做Android说长不长,说短也不短了,突然想做个属于自己个阅读器,但是开源的阅读器等于0,基本只有txt格式,后面看到了FBReader,确实牛鼻,但是对于该项目分析太耗时间了,后面看到一个库AppMethodOrder,介绍如下:




背景:当项目代码量很大的时候,或者你作为一名新人要快速掌握代码的时候,给函数打上log,来了解代码执行逻辑,这种方式会显然成本太大,要改动项目编译运行,NO!太耗时或者你想debug的方式来给你想关注的几个函数,来了解代码执行逻辑,NO!因为你肯定会漏掉函数;也许你可以固执的给你写的项目打满log说这样也行,但是你要知道你方法所调用的jdk的函数或者第三方aar或者jar再或者android sdk中的函数调用顺序你怎么办,还能打log吗?显然不行吧,来~这个项目给让可以让你以包名为过滤点过滤你想要知道所有函数调用顺序



哎,凡事都要讲究科学,高效,ok。

因为开源作者写的文档个人认为看得挺头疼的,因为本来是30秒都不到的事情,看了文档后觉得要花10分钟(没有骂作者的意思哈)

项目地址:https://github.com/zjw-swun/AppMethodOrder



使用开发工具


Android Studio 2.2.3

使用步骤



1、下载utils.gradle到工程根目录

如下图



2、修改utils.gradle里的包名

如果需要过滤,就按下图修改需要过滤的包名,不需要过滤就无所谓了




3、在工程gradle最后添加对utils.gradle的引用


subprojects {    println "this is an infomation from build.gradle on root"    apply from: rootProject.getRootDir().getAbsolutePath() + "/utils.gradle"}

如下图





4、运行项目,做对应的操作

比如我想看界面A跳到界面B的代码执行顺序和方法逻辑,在完成上面3个步骤后运行该项目,然后把Android studio视图切换到如下图


然后在你app界面A点击某某进入界面B,在点击(关闭)上图中有数字2的按钮,这时候android studio会默认打开一个可视化窗口。

5、双击右侧AppOutPutMethodOrder和AppFilterMethodOrder

先双击AppOutPutMethodOrder,等执行玩task在双击AppFilterMethodOrder命令,如下图




6、生成对应的文件

完成了上面5个步骤后,在工程的captures目录下会生成对应的txt文件,然后就可以查看该文件知道代码执行逻辑方法和顺序如下图





原创粉丝点击