我想显示我的应用程序中发生的异常的详细信息,例如异常的行号。这可能吗?
最佳答案
是。在以下示例中,关于stackTraceElement中的异常的信息很多。
自定义此方法:
private static String getExceptionDetails(Activity act, Exception e) {
StackTraceElement[] stackTraceElement = e.getStackTrace();
String fileName = "";
String methodName = "";
int lineNumber = 0;
try {
String packageName = act.getApplicationInfo().packageName;
for (int i = 0; i < stackTraceElement.length; i++) {
if (stackTraceElement[i].getClassName().startsWith(packageName))
{
fileName = stackTraceElement[i].getFileName();
methodName = stackTraceElement[i].getMethodName();
lineNumber = stackTraceElement[i].getLineNumber();
break;
}
}
} catch (Exception e2) {
}
return fileName + ":" + methodName + "():line "
+ String.valueOf(lineNumber);
}