我正在设计一个Android应用程序,我想查看崩溃发生时的详细信息。所以我使用了Thread.UncaughtExceptionHandler()类。它会生成崩溃线程的详细信息,但一旦发生崩溃,应用程序就会被阻塞。我想在崩溃后立即关闭我的应用程序,但也想要详细介绍Thread。我在Activity类中包含以下代码。有什么建议吗?
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable ex) {
Log.e("UserApp", "uncaught_exception_handler: uncaught exception in thread " + thread.getName(), ex);
if(ex instanceof RuntimeException)
throw (RuntimeException)ex;
if(ex instanceof Error)
throw (Error)ex;
Log.e("UserApp", "uncaught_exception handler: unable to rethrow checked exception");
}
答案 0 :(得分:4)
您可以在finish();
区块中尝试exception
答案 1 :(得分:1)
试试这个......
你可以使用,
YourActivityname.this.finish(); or
android.os.Process.killProcess(android.os.myPid());
你应该使用第一个,因为这是一个最好的做法,就是调用finish()并让操作系统在需要的时候处理你的进程。
如果你使用second one,在事件处理过程中杀死你的进程,各种坏事 - 这是一种不好的做法。