我以前的我的APP 都沒有加入 關鍵遠程日誌功能。服務器
如今本身的服務器已經穩定成熟。函數
決定也開始收集異常。幫助本身的程序更加穩健的運行。this
處理方法:線程
1, 新建類 Crashhandler implements Thread.uncaughtExceptionHandler 方法;日誌
2,實現其中的public void onUncaughtException ()方法;進程
並在這個方法中捕獲異常處理信息。io
3,關鍵代碼:程序
Thread.setDefaultUncaughtExceptionHandler(this);方法
這樣當程序有未捕獲的異常的時候, 便會調用 onUncaughtException 方法。im
關鍵點:在函數 onUncaughtException 的實現中, 要麼須要由以前的 默認異常處理handler 來處理異常,要麼須要顯式的殺死當前進程。
若是不作這個調用, 那麼界面就會出現ANR;
4,Thread:
Thread.setDefaultUncaughtExceptionHandler(this);
能夠在任意線程調用;各個線程的未捕獲異常都會在這裏被通知。