应用程序Framework源码级别调试
来源:互联网 发布:数据库分布式 编辑:程序博客网 时间:2024/05/17 18:23
应用程序Framework源码级别调试
参考《Android框架揭秘》
Table of Contents
- 1 应用程序Framework源码级别调试
- 1.1 加载应用程序Framework源
- 1.2 调试HelloWorld Framework(源码级)
1 应用程序Framework源码级别调试
1.1 加载应用程序Framework源
在Android源码中包含了Eclipse的设置文件,利用它可以把Framework的所有源码路径保存下来。
(1) 首先搭建好Android编译环境,下载Android平台源代码,在使用make命令,编译Android系统。
(2) 再把Android提供的.classpath文件复制到Android平台源码所在的最上层目录中
$cd mydroid$cp development/ide/eclipse/.classpath ~/mydroid$chmod u+w .classpath
(3) 启动emacs,File->New->Java Project,在New Java Project窗口中输入工程名,指定Location为Android源码所在的目录,也就是.classpath所在的位置,然后单击Finish按钮。
(4) 查看Package Explorer窗口,可以看到Android Framework源码已经被导入进来了。
(5) 接下来设置调试器,以便调试Android平台源码。先要建立一个HelloWorld工程。在HelloWorld工程上单击鼠标右键,Debug As->Debug Configuration,打开Debug Cofnigurations窗口。
(6) 在Debug Configurations窗口左侧列表中,选择Remote Java Application,单击鼠标右键,选择New,设置Name,Project,Host,Port,单击Apply应用。
1.2 调试HelloWorld Framework(源码级)
上面工作完成后,开始调试HelloWorld程序,跟随与应用程序相关的Framework源代码,查看变量的值。
(1) 首先在HelloWorld程序里面设置一个断点,比如setContentView(R.layout.main);这里设置一个断点。然后在HelloWorld工程上右键Debug As->Android Application打开调试窗口,程序运行到断点的位置停止,并把控制权交给Eclipse的java调试器。
(2) 在Debug窗口中点击ActivityThread类,会提示源码没有找到,此时,在ActivityThread.perform LaunchActivity上单击鼠标右键,在弹出的菜单中选择Edit Source Lookup菜单,弹出Edit Source Lookup Path窗口。
(3) 在Edit Source Lookup Path窗口中单击Add按钮
(4) 选择Java Project,然后选择前面创建的的Android-Framework工程。
(5) 若能看到ActivityThread类的源码,表示源码添加成功,在右侧的Variables窗口中,可以看到应用程序Framework中的所有变量值。
至此,调试环境搭建完成。
Date: 2012-07-27 16:49:11 CST
- 应用程序Framework源码级别调试
- entity framework源码调试
- VS2010调试.net framework源码
- 【转】配置Visual Studio调试FrameWork源码
- .Net Framework源码调试详细步骤
- Android系统Framework层源码调试
- 应用程序如何调试DLL源码工程
- ADS进行源码级别的U-BOOT 调试 H-JTAG
- Visual Studio 2008调试.NET Framework源码基本步骤
- Android Studio导入Android源码/调试framework的教程
- android6.0单独编译和调试framework源码的方法
- 怎么调试安卓framework的源码啊
- Android FrameWork学习(二)Android系统源码调试
- Android Studio导入Android源码/调试framework的教程
- framework调试
- eclipse下导入android源码并调试Android原生应用程序
- 应用程序调试
- 应用程序架构(Application Framework)
- shell学习1
- linux命令之cat
- fsockopen与pfsockopen的区别
- Flash Player 11 Stage3D学习大杂烩
- 编写安全代码——不要用memcmp比较structure
- 应用程序Framework源码级别调试
- 【转】单例模式完全剖析
- zend framework 各种版本下载地址 http://framework.zend.com/download/archives/
- Linux shell 2
- Linux 技巧
- 注册表的一些命令
- 小试Objc中的类
- emacs orgmode 简单文章编辑示例
- 【多线程】两种方式创建线程