总结了下在代码中输出堆栈信息的方法,便于以后直接拿来用
方法一 将当前调用堆栈信息输出到logcat(已知最简单的方法,一 行搞定):
Log.e("TAG", "Stack:", new Throwable("stack dump"));
方法二 将当前调用堆栈信息输出到标准输出,android上会直接输出 到logcat:
Exception e = new Exception("stack dump");
e.printStackTrace();
<span style="white-space:pre"> </span>Exception ex = new Exception();
StackTraceElement[] stackElements = ex.getStackTrace();
if (stackElements != null) {
for (int i = 0; i < stackElements.length; i++) {
String statckString = stackElements[i].getClassName() + "."
+ stackElements[i].getMethodName() + " ("
+ stackElements[i].getFileName() + ":"
+ stackElements[i].getLineNumber() + ")";
// print statckString to anywhere
System.out.println(statckString);
}
}