第二步:線程未捕獲異常接口的實現html
import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintStream; import java.lang.Thread.UncaughtExceptionHandler; public class CrashHandler implements UncaughtExceptionHandler{ private static CrashHandler crashHandler; @Override public void uncaughtException(Thread thread, Throwable ex) { // TODO Auto-generated method stub if (crashHandler != null) { try { //將crash log寫入文件 FileOutputStream fileOutputStream = new FileOutputStream("/mnt/sdcard/crash_log.txt", true); PrintStream printStream = new PrintStream(fileOutputStream); ex.printStackTrace(printStream); printStream.flush(); printStream.close(); fileOutputStream.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } //設置默認處理器 public void init() { Thread.setDefaultUncaughtExceptionHandler(this); } private CrashHandler() {} //單例 public static CrashHandler instance() { if (crashHandler == null) { synchronized (crashHandler) { crashHandler = new CrashHandler(); } } return crashHandler; } }第三步:在application中調用異常的捕獲功能
import android.app.Application; public class MainApplication extends Application { @Override public void onCreate() { super.onCreate(); CrashHandler crashHandler = CrashHandler.getInstance(); crashHandler.init(this); } }第四步:application在清單文件中的註冊
<application android:name=".MainApplication" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > ... </application>講到這裏就介紹完了,若是你把這些代碼插入進去了,等你程序再崩潰的時候,就會給你自動記錄了,固然上面講的這些只是給你記錄到本地,並存放成文件了,若是想上傳到服務器,還請同窗們本身動手,把文件進行上傳吧!上傳文件到服務器我想同窗們應該都會吧!