public class MobileGuardAppliation extends Application {
@Override
public void onCreate() {
Thread.currentThread().setUncaughtExceptionHandler(
new MyExecptionHandler());
super.onCreate();
}
private class MyExecptionHandler implements UncaughtExceptionHandler {
@Override
public void uncaughtException(Thread thread, Throwable ex) {
try {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
Field[] fileds = Build.class.getDeclaredFields();
for (Field filed : fileds) {
sw.write(filed.getName() + "--" + filed.get(null) + "\n");
}
ex.printStackTrace(pw);
File file = new File(Environment.getExternalStorageDirectory(),
"log.txt");
FileOutputStream fos = new FileOutputStream(file);
fos.write(sw.toString().getBytes());
fos.close();
pw.close();
sw.close();
android.os.Process.killProcess(android.os.Process.myPid());
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Android扑捉全局异常
最新推荐文章于 2021-02-12 04:19:05 发布