【问题标题】:Android framework debugging in Eclipse在 Eclipse 中调试 Android 框架
【发布时间】:2012-11-13 10:04:15
【问题描述】:
我正在开发一个项目,我正在对 android 框架源代码进行更改。在 Eclipse 中执行此操作并能够进行调试的最佳方法是什么?我已经看到了在 Eclipse 中附加 android 源代码的帖子,但这是“标准”源代码,而不是我自己的版本。
目前我只是在文本编辑器中更改框架并每次通过命令行构建,从命令行运行模拟器并启动 adb logcat 会话以查看是否没有任何异常,但必须是另一种(更高效/可行)的方法吗?
【问题讨论】:
标签:
android
android-source
android-framework
【解决方案1】:
在here的官方文档中有说明如何附加调试器。在我的情况下,步骤不同(Eclipse 3.7.2 和最后的 android 工具):
- 运行 > 调试配置...
- 右键单击“远程 Java 应用程序”,选择“新建”。
- 选择一个名称,例如“android-debug”或任何您喜欢的名称。
- 将“项目”设置为您的 android 项目名称。
- 将主机设置为“localhost”,但将端口更改为 8700。
- 点击“调试”按钮,一切就绪。
- 然后转到 DDMS 透视图并选择要调试的进程
(在进程列表中选择进程,然后点击绿色
错误图标)。如果你想测试你的服务,我认为这是一个
system_server 进程的一部分。
- 现在您可以切换到调试视角。
如文档中所述:
完成后,您应该会看到一个线程列表;如果您选择一个并且
打破它(通过单击“暂停”图标),它应该显示堆栈
跟踪、源文件和执行所在的行。断点和
什么都行。
【解决方案2】:
对我有用的是使用 eclipse 来编辑/浏览 AOSP 代码,但使用终端来构建 AOSP 代码。请查看Debugging Android framework services。本博客介绍了如何设置不会破坏 AOSP 构建的 eclipse 项目,然后使用该项目进行调试。与前面的答案描述的非常相似,但使用了一个影子文件夹,以便 eclipse 构建工件不会破坏 AOSP 构建。