我正在尝试为Android编写一个应用程序,当我启动我的新活动时,我设置了断点并发现它在我的onCreate中运行没有任何错误,但在该函数返回后,调试器说有一个NullPointer异常.问题是,它不在我的代码中,它在ActivityThread.performLaunchActivity(ActivityThread $ ActivityRecord)行中显示它:2268并且源通常是(如果它是我的代码)我只是得到"Source not found".和一个显示"编辑源查找路径"的按钮
我怎样才能设置eclipse所以我可以调试这个问题?我确定我在我的代码中做错了,但因为异常源于我看不到的代码,我不知道如何找出问题所在.
我正在使用android-sdk-linux_x86-1.5_r3和我的G1用于这个项目.
更新:我认为我的问题与android开发有关,而不是使用eclipse.我不知道在哪里找到抛出异常的代码的源代码.也许有一种方法可以在没有该文件的情况下调试它,但我不确定它会是什么.
mik*_*pie 54
我自己想知道这一点,即使它在logcat中显示"由...引起",我也希望调试器能够实际打破NullPointer被抛出的位置(即使它被捕获)
这是如何做:
现在尝试运行它,调试器应该在实际发生的地方中断.
你的假设应该是NPE是由你引起的,而不是Android。NPE 可能会在 处弹出ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord) line: 2268,但这意味着您向某些内容传递了一个空指针,并且它会继续传递,直到performLaunchActivity实际尝试使用它并在发现空指针时崩溃。
如果我们可以看到完整的 LogCat,特别是 Eclipse LogCat 中红色的所有内容,这将有助于调试。我已经把自己翻了个底朝天地寻找一个 NPE,只是为了其他人发现一个非常微妙的资源初始化线不合适。
| 归档时间: |
|
| 查看次数: |
14018 次 |
| 最近记录: |