Android - 補捉Crash資訊

摘要:Android - 補捉Crash資訊

為了補捉crash,

想要用一些既有的功能,試了百遍都不順,像ACRA,

沒有後端,用google docs,但過去文章與現在文章已經不同了,也沒試成功。

又不想花錢。

再想有沒有其它辦法,

就想,能不能抓到crash資訊,

發現了這篇文章

http://segmentfault.com/blog/jackland/1190000000718954

 

使用的是在application時,就註冊補捉並處理例外狀況。

        //設置異常處理實例
        CrashHandler handler = new CrashHandler(); 
        Thread.setDefaultUncaughtExceptionHandler(handler); 

要自訂自己撰寫CrashHandler 要實作 UncaughtExceptionHandler 這個介面

public class CrashHandler implements UncaughtExceptionHandler { 
    //系統默認的UncaughtException處理
    private Thread.UncaughtExceptionHandler mDefaultHandler; 

    public CrashHandler() { 
        mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler(); 
    } 

    @Override 
    public void uncaughtException(Thread thread, Throwable ex) { 
        try { 
            //get ex do something
        } catch (Exception e) { 
            Log.w(" ", e); 
        } 

        //將異常拋給系統處?? 
        mDefaultHandler.uncaughtException(thread, ex); 
    } 
}

這個是精簡版的,

詳細就看連結實作。

利用得到的例外ex,再去從事一些記錄的動作