4

例外の行番号など、アプリケーションで発生した例外の詳細を表示したいと考えています。これは可能ですか?

4

6 に答える 6

7

はい。次の例の 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);
}
于 2012-06-13T05:08:54.397 に答える
2

チェックしましたか?

exception.printStackTrace()
于 2012-06-13T05:08:28.210 に答える
2
exception.printStackTrace()

例外が発生した行番号とメソッド名を表示します。

于 2012-06-13T05:10:51.640 に答える
0

try catch ブロックを次のように使用します。

 try{

   // here add your code 

    }catch(Exception e){
     Log.e("error",e.toString());
  }
于 2012-06-13T05:23:35.643 に答える
-3

小切手 -

exception.getMessage()
于 2012-06-13T05:10:43.373 に答える