gpt4 book ai didi

android - Crashlytics Android SDK - 自定义 UncaughtExceptionHandler

转载 作者:IT老高 更新时间:2023-10-28 22:05:50 26 4
gpt4 key购买 nike

是否可以在一个应用程序中结合自定义 UncaughtExceptionHandler 和 crashlytics?如果是 - 如何?

最佳答案

更新

请参阅@kmityak answer因为 Crashlytics/Fabric 初始化现在是异步的,我下面的解决方案不再有效。

原始答案

您可以设置您的自定义 UncaughtExceptionHandler,前提是它将异常传递给默认 UncaughtExceptionHandler,以便稍后通过 Crashlytics 处理。

以下代码在 Application 子类中实现:

private static Thread.UncaughtExceptionHandler mDefaultUEH;
private static Thread.UncaughtExceptionHandler mCaughtExceptionHandler = new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable ex) {
// Custom logic goes here

// This will make Crashlytics do its job
mDefaultUEH.uncaughtException(thread, ex);
}
};

@Override
public void onCreate() {
super.onCreate();

// Order is important!
// First, start Crashlytics
Crashlytics.start(this);

// Second, set custom UncaughtExceptionHandler
mDefaultUEH = Thread.getDefaultUncaughtExceptionHandler();
Thread.setDefaultUncaughtExceptionHandler(mCaughtExceptionHandler);
}

第二个选项是设置您的自定义 UncaughtExceptionHandler 之后注册 Crashlytics - 然后 Crashlytics 将所有未捕获的异常报告为致命异常,然后传递给您的自定义处理程序。

关于android - Crashlytics Android SDK - 自定义 UncaughtExceptionHandler,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25203616/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com