如何调试跟踪Android源代码
2015-08-31 09:47
771 查看
Android平台代码很多,关系也很复杂,通常我们调试程序的时候是无法跟踪到Android framework code里的,如果能调试跟踪Android source code将给我们这些初学者带来很多便利,本文将给出一个调试跟踪Android source code 的方法。
1. 首先,得到Android 源代码(可参考之前的文章--如何获取Android源代码并编译.doc),并且编译,得到output file,在(Android source)/out目录下,也可通过别的途径获取Android source code (以androidsrc.tgz为例) 和别人编译好的 output file(out.tgz)
2. 解压缩这两个 tgz 文件,并把解压出来的out 目录放到 myandroid 目录下,如下图所示。
3. 拷贝 myandroid\development\ide\eclipse\.classpath 到 myandroid\.classpath.
4. 拷贝 myandroid\out\target\product\generic\*.img 到 {Android SDK}\tools\lib\images 并且覆盖源文件.
5. 运行{Android SDK}\tools目录下的 emulator.exe.
6. 运行{Android SDK}\tools目录下的 ddms.bat。你可以看到下面的窗口,里面会列出当前emulator里跑的进程:
7. 启动 eclipse ,按照这个步骤 File->New->Java Project (不是 Android Project!) ->Create project from existing source 选到 myandroid 目录 .
8. 在经过长时间等待之后,Android source code将被导入project,正常情况下应该没有error,但是会有很多warning,如果有error后面的debug将不会成功,原因可能是output file ,out.tgz在解压得过程中出错,重新copy out.tgz,或者完整拷贝 out/ 目录到本地目录下,即可解决。
9. 选择想要调试的进程在 DDMS, 用 phone 进程为例,ddms一定要在eclipse之前启动,否则eclipse启动的时候也会启一个ddms,会造成冲突。
10. 在eclipse里, Run->Debug Configuration->Remote Java Application->New, 设置 Connection port to 8700 (DDMS’s 默认端口,你可以改变它).
11. 设置断点在source code,然后就可以像往常一样进行调试了。
来源: <http://android.tgbus.com/Android/androidnews/200902/177628.shtml>
来自为知笔记(Wiz)
1. 首先,得到Android 源代码(可参考之前的文章--如何获取Android源代码并编译.doc),并且编译,得到output file,在(Android source)/out目录下,也可通过别的途径获取Android source code (以androidsrc.tgz为例) 和别人编译好的 output file(out.tgz)
2. 解压缩这两个 tgz 文件,并把解压出来的out 目录放到 myandroid 目录下,如下图所示。
3. 拷贝 myandroid\development\ide\eclipse\.classpath 到 myandroid\.classpath.
4. 拷贝 myandroid\out\target\product\generic\*.img 到 {Android SDK}\tools\lib\images 并且覆盖源文件.
5. 运行{Android SDK}\tools目录下的 emulator.exe.
6. 运行{Android SDK}\tools目录下的 ddms.bat。你可以看到下面的窗口,里面会列出当前emulator里跑的进程:
7. 启动 eclipse ,按照这个步骤 File->New->Java Project (不是 Android Project!) ->Create project from existing source 选到 myandroid 目录 .
8. 在经过长时间等待之后,Android source code将被导入project,正常情况下应该没有error,但是会有很多warning,如果有error后面的debug将不会成功,原因可能是output file ,out.tgz在解压得过程中出错,重新copy out.tgz,或者完整拷贝 out/ 目录到本地目录下,即可解决。
9. 选择想要调试的进程在 DDMS, 用 phone 进程为例,ddms一定要在eclipse之前启动,否则eclipse启动的时候也会启一个ddms,会造成冲突。
10. 在eclipse里, Run->Debug Configuration->Remote Java Application->New, 设置 Connection port to 8700 (DDMS’s 默认端口,你可以改变它).
11. 设置断点在source code,然后就可以像往常一样进行调试了。
来源: <http://android.tgbus.com/Android/androidnews/200902/177628.shtml>
来自为知笔记(Wiz)
相关文章推荐
- ArcGIS4Android开发----空间查询
- androidStudio中如何加载字体资源?
- android Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)
- Android中XML解析之XMLSAXParser解析
- Android访问中央气象台的天气预报API得到天气数据
- Android时钟应用的定时框架分析
- [转]Android 如何监听返回键,弹出一个退出对话框
- android学习笔记(2)
- Android 常用效果(各种进度条,酷炫loading动画,火箭升空,撒花以及趋势图)
- Android文本样式——下
- Android学习笔记09:Paint及Canvas的简单应用
- 关于Android Canvas.drawText方法中的坐标参数的正确解释
- Android autotest - Monkey tool
- Android M 新的运行时权限开发者需要知道的一切
- Android编程规范
- android:windowSoftInputMode属性详解
- Android自学笔记之RadioGroup和RadioButton的使用
- Android自学笔记之ChenkBox复选框
- Android自学笔记之 多个TextView跑马灯的实现
- android 布局背景模糊化处理