注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

熊猫正正的博客

熊猫正正的天空

 
 
 

日志

 
 

Android源代码调试环境搭建  

2013-12-06 15:20:50|  分类: Android开发与逆 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://ikinglai.blog.51cto.com/6220785/1223727

   我们在调试Android应用程序的时候,有时候遇到一些莫名其妙的问题,因此我们需要查看Android内部是如何调用的。我们都知道Android是一个伟大的开源项目,因此debug的时候肯定是支持源代码级别调试的。采用源代码调试,一方面有利于发现问题,另一方面有利于我们对Android系统的整个流程有一个比较清晰的认识,对我们以后开发app或者修改rom都是大有帮助的。好了废话不说,下面就介绍一下如何在eclipse中进行源代码调试吧!


   显然要进行源代码调试,首先必须下载源代码。大家可以都google的官方网站http://source.android.com/source/index.html 去下载,因为Android源代码是用git进行管理的,同时google为了管理方便,用python写了一个repo脚本进行项目管理,因此你必须确保你的电脑上安装了git和python,至于具体如何下载,大家可以参考android网站上的说明,以后我也会专门介绍如何下载和编译整个Android源代码。


   我下载的是Android4.2版本,整个源代码比较大,具体的目录结构如下:


Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客



源代码下载完成后,需要导入到eclipse,这样查看起来比较方便。在命令行下,cd到development/ide/eclipse这个目录下,会发现这个目录下有一个.classpath隐藏文件


Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客



将.classpath文件拷贝到你的Android源代码的根目录下

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客


打开eclipse,新建一个Java工程,Location选择你Android的源代码所在的目录

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客


然后eclipse会加载Android的源代码,这个过程可能有点久,完成后点击finish,可以看到整个Android源代码都导入到eclipse中了,包括c,c++,java等所有的代码,这样查看起来就方便多了

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客



Android源代码导入eclipse后,接下来就要进行关联调试了。首先新建一个Android的HelloWorld的工程,先在模拟器上运行一下确保没有问题,然后右击HelloWorld工程,选择Debug As  ->  Debug Configurations,选择左侧的Remote Java Application,右击选择New,可以自己设置一个端口,如我设置的是9000,然后点击Apply

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客



在HelloWord的MainActivity设置一个断点

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客



然后右击Debug As -> Android Application,进入Android调试器

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客



你可以随便点击右边的ActivityThread中的一个方法,如performLaunchActivity,但是这个时候你会发现,提示源代码没有找到,你按照提示点击“Edit Source Lookup Path”,这时会弹出一个对话框,点击“Add”,选择Java Project,然后找到你之前的建的那个Java 源代码工程,这样就看到Android的源代码了,接下去的调试就和我们平常的调试一样了,如F5进入方法,F6 执行下一行等等。


因为我之前在super.onCreate方法上面设置了一个断点,按F5进入这个方法的内部,查看到Activity.java中的代码如下:

Android源代码调试环境搭建 - 熊猫正正 - 熊猫正正的博客




好了,整个Android源代码的调试就搭建完成了,这样就可以调试自己的代码,还有分析整个Android运行的流程了,这对于rom开发还是很有帮助的。

  评论这张
 
阅读(52)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017