Java 如何通过显示一般错误UI优雅地处理未捕获的异常

Java 如何通过显示一般错误UI优雅地处理未捕获的异常,java,android,crash,crashlytics,crash-reports,Java,Android,Crash,Crashlytics,Crash Reports,我想知道Crashlytics如何能够在任何线程上通过整个应用程序监控未捕获的异常?它使用全局异常处理程序还是什么 除了登录到远程服务器之外,我还想通过向用户显示一个通用错误UI来实现类似的行为,从而优雅地处理未捕获的异常。这可能吗 以下是我尝试过的: 我实现了一个UncaughtExceptionHandler: public class ActivityExceptionHandler implements Thread.UncaughtExceptionHandler { pri

我想知道Crashlytics如何能够在任何线程上通过整个应用程序监控未捕获的异常?它使用全局异常处理程序还是什么

除了登录到远程服务器之外,我还想通过向用户显示一个通用错误UI来实现类似的行为,从而优雅地处理未捕获的异常。这可能吗

以下是我尝试过的:

我实现了一个
UncaughtExceptionHandler

public class ActivityExceptionHandler implements Thread.UncaughtExceptionHandler {

    private final Context mContext;

    public ActivityExceptionHandler(Context context) {
        mContext = context;
    }

    @Override
    public void uncaughtException(Thread t, Throwable e) {
        // logging code
        ...
        ...

        // show error UI
        Intent intent = new Intent(mContext, GenericErrorActivity.class);
        intent.putExtra("error", e.toString());
        mContext.startActivity(intent);

        android.os.Process.killProcess(android.os.Process.myPid());
        System.exit(0);
    }

}
并将其注册到我的
BaseActivity
onCreate()


但是这只处理主线程上的异常,其他线程呢?

@NileshRathod已经这样做了:)你可以这样做:@SandeepRandhawa没有代码不一定是坏事@y、 阿拉姆,在这种情况下,它似乎是。或者没有比这更好的研究了?
Thread.setDefaultUncaughtExceptionHandler(new ActivityExceptionHandler(this));