-
初始化
-
@param context
*/
public void init(Context context) {
this.context = context;
// 获取系统默认的UncaughtException处理器
mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler();
// 设置该CrashHandler为程序的默认处理器
Thread.setDefaultUncaughtExceptionHandler(this);
}
/** 当UncaughtException发生时会转入该函数来处理 */
@Override
public void uncaughtException(Thread thread, Throwable ex) {
MyApp.isAppException = true;
if (!handleException(ex) && mDefaultHandler != null) {
// 如果用户没有处理则让系统默认的异常处理器来处理
mDefaultHandler.uncaughtException(thread, ex);
} else {
// Reset Record State
ProviderUtil.setValue(context, Name.REC_FRONT_STATE, “0”);
ProviderUtil.setValue(context, Name.REC_BACK_STATE, “0”);
try {
Thread.sleep(2000);
} catch