一.目的:
我现在的目的:学会根踪源码的某个模块的运行轨迹。如查看源码中电话本Contacts的执行方式,查看Browser的工作方式(各类中各方法功能实现)
二.有效的方法:
大多数教程都介绍采用debug方式来根踪;这样其实有很多不方便的地方,比如咱们不知道哪个类的功能,不好确定你的当前操作的准确地点。
所以,我采取android最神奇的发明:Log语句,它的神奇在于--在真机上运行时Log出来的打印数据也可以在控制台上显示。
这面的Log语句是我习惯的写法:
1.//wu0wu是我在源码上加的我本人修改的标记(和源码的代码区分)
2.我在Log的打印数据中先加我的标记:***wu:***"这样在logcat信息里一目了然。
3.在根着getClass().getName()这样就可以打印出当前方法调用所在的类名。一下子就可以定位类的位置。
4."-->clearFormData()"是我在某个类里的所有方法里都加入了上面的那句Log语句,所以这里是当前方法名。一下子定位当前的方法调用位置。
三.编译模块
1.我们在源码的com.android.contacts包下的所有类的所有方法都加这句Log语句。
2.在ubuntn的终端命令窗口中进入源码文件夹,执行. build/envsetup.sh (.后面有空格)
3.使用mmm来编译指定目录的模块,如Contacts:
mmm packages/apps/Contacts
4.编译完后生成两个文件:
out/target/product/generic/data/app/ContactsTests.apk
out/target/product/generic/system/app/
Contacts.apk
5.
使用make snod重新生成system.img
6.
运行模拟器emulator
7.在
emulator中操作Contacts(你想查看的模块,这样你在adb logcat中就能一眼看到你所加的Log标记了)
四.在Logcat中查看显示结果
adb logcat
分享到:
相关推荐
SimpleScalar是一款经典的CPU模拟器,本文介绍了如何在Ubuntu9.04下安装SimpleScalar。安装中会出现许多问题,文中给出了解答。
在ubuntu 9.04上安装VMWareTools步骤 上海嵌入式家园-开发板商城 联系人:贺工(嵌入式高级系统工程师) 电话: 13917077026 QQ: 844698468 MSN: embedclub@hotmail.com Email:embedclub@vip.qq.com 网址:...
对于学习ubuntu 9.04的童鞋很有用滴
Ubuntu 9.04 ISPconfig设置
ubuntu9.04下的LAMP安装 ubuntu9.04下的LAMP安装 验证OK
Ubuntu-9.04-1gb.7z,是colinux下的Ubuntu 9.04的镜像文件~
新手windows下硬盘安装Ubuntu 9.04 新手windows下硬盘安装Ubuntu 9.04 新手windows下硬盘安装Ubuntu 9.04 新手windows下硬盘安装Ubuntu 9.04 新手windows下硬盘安装Ubuntu 9.04新手windows下硬盘安装Ubuntu 9.04 ...
OpenERP Installing Ubuntu9.04
NULL 博文链接:https://yuanqixun.iteye.com/blog/427715
这个资源是为了给大家提供更快的更新源而上传。其中包含了中科大的貌似最快的源。
此教程收录了各个论坛的精华帖子,绝对给你打造一个完美的Ubuntu
ubuntu9.04下搭建Qt4.5开发环境.pdf
NULL 博文链接:https://beyondjhf-2008.iteye.com/blog/403046
ubuntu 9.04 安装配置优化全记录
NULL 博文链接:https://zywang.iteye.com/blog/407055
对Ubuntu 9.04进行极其详细的介绍...
ubuntu9.04下搭建Qt4.5开发环境[定义].pdf
ubuntu9.04上的中文输入法安装包(deb),scim.txt列出的各包顺序为安装顺序。ubuntu9.04上的中文输入法安装包(deb),scim.txt列出的各包顺序为安装顺序
Ubuntu9.04服务器配置手册, 关于UBUNTU9.04服务器配置的简明手册,讲述服务器配置的详细步骤。
ubuntu9.04wepcrack可以参考一下的。 有能搞定wpa&wpa2的大家可以交流一下啊。