我正在尋找一種方法來獲取堆棧跟蹤,當我在某個斷點時。這可能嗎?理想情況下,不必崩潰應用程序並修改代碼。我試着玩Android調試器,但找不到任何有用的東西。有沒有辦法按需打印堆棧跟蹤?
原因是,有時我不確定應用程序是如何到達代碼中的某個點,所以我接受其他建議,以幫助我跟蹤方法調用。
我正在尋找一種方法來獲取堆棧跟蹤,當我在某個斷點時。這可能嗎?理想情況下,不必崩潰應用程序並修改代碼。我試着玩Android調試器,但找不到任何有用的東西。有沒有辦法按需打印堆棧跟蹤?
原因是,有時我不確定應用程序是如何到達代碼中的某個點,所以我接受其他建議,以幫助我跟蹤方法調用。
這可以用Java來完成:
new Throwable().printStackTrace();
在Eclipse中,如果創建了「表達」與在Expressions
鑑於Debug
角度的代碼,將打印當前的堆棧跟蹤(即堆棧跟蹤的您的代碼停止的斷點)在Console
視圖中。
Log.e("AppName", "Debug exception", new Exception());
謝謝,你的意思是在表達式視圖?我應該輸入什麼代碼,與斷點一致?我試過了,但在控制檯視圖和LogCat中都沒有出現任何東西。 – JohnEye 2012-08-09 14:02:41
在「表達式」視圖中,單擊「添加新表達式」並粘貼我提供的代碼('new Throwable()。printStackTrace();')。點擊「Enter」。切換到「控制檯」視圖,你應該看到一個堆棧跟蹤。 這對我來說在vanilla Eclipse Juno上適用,只用'main(String [])'方法調試簡單的Java應用程序。 – npe 2012-08-09 14:05:46
哦,當然,我只是在密集:-)應該發生在我身上,我想讓執行您發佈的代碼。非常感謝,像魅力一樣工作。 – JohnEye 2012-08-09 14:11:02