簡體   English   中英

有沒有辦法按需打印堆棧跟蹤?

[英]Is there a way to print stack trace on demand?

當我在某個斷點時,我正在尋找一種獲得堆棧跟蹤的方法。 這可能嗎? 理想情況下,不必崩潰應用程序和修改代碼。 我嘗試使用Android調試器,但找不到任何有用的東西。

原因是有時候我不確定應用程序是如何到達代碼中的某個點的,因此我對其他可以幫助我跟蹤方法調用的建議持開放態度。

這可以用Java完成:

new Throwable().printStackTrace();

在Eclipse中,如果在Debug透視圖的Expressions視圖中使用該代碼創建“表達式”,它將在Console視圖中打印當前堆棧跟蹤(即代碼停止的斷點的堆棧跟蹤)。

Log.e("AppName", "Debug exception", new Exception());

最簡單的方法是拋出異常,立即捕獲並使用printStackTrace()

您還可以嘗試使用Thread.currentThread().getStackTrace() ,除了具有printStackTrace()的文本表示外,還可以為您提供StackTraceElement[]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM