Android Crashlytics和默认异常处理程序
我正在为我的android项目使用crashlytics,我的要求是,在应用程序崩溃时,我希望我自己的自定义反馈活动,并且我还希望在crashlytics中将此记录为致命异常。我尝试了被接受的答案: ,但异步初始化对我来说没有成功。所以,我尝试同步初始化,比如:Android Crashlytics和默认异常处理程序,android,exception-handling,crashlytics,google-fabric,crashlytics-android,Android,Exception Handling,Crashlytics,Google Fabric,Crashlytics Android,我正在为我的android项目使用crashlytics,我的要求是,在应用程序崩溃时,我希望我自己的自定义反馈活动,并且我还希望在crashlytics中将此记录为致命异常。我尝试了被接受的答案: ,但异步初始化对我来说没有成功。所以,我尝试同步初始化,比如: Thread.UncaughtExceptionHandler defaultUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler(); Thread.
Thread.UncaughtExceptionHandler defaultUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable ex) {
// launch feed back activity
Intent intent = new Intent();
intent.setAction("com.project.SEND_LOG");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
defaultUncaughtExceptionHandler.uncaughtException(thread, ex);
}
});
但这并不启动反馈活动(尽管启动反馈活动的代码已执行),而是显示android中默认的应用程序崩溃行为。
有人能帮我吗?谢谢。Crashlytics并不正式支持这一点。如果您确实找到了一个解决方案,我们无法确保它会随着时间的推移继续工作,并更新我们的SDK。谢谢。Crashlytics并不正式支持这一点。如果您确实找到了一个解决方案,我们无法确保它将随着时间的推移继续工作,并更新我们的SDK。来自官方代码示例: 确保Fabric.with()行位于所有其他第三方SDK之后 设置未捕获的ExceptionHandler 在AndroidManifest中添加元数据
<meta-data
android:name="firebase_crashlytics_collection_enabled"
android:value="false" />
然后您可以从crashlytics获取报告,并在您自己的UncaughtExceptionHandler中捕获错误。
它在我的API27手机上运行,带有crashlytics:2.10.1的官方代码示例: 确保Fabric.with()行位于所有其他第三方SDK之后 设置未捕获的ExceptionHandler 在AndroidManifest中添加元数据
<meta-data
android:name="firebase_crashlytics_collection_enabled"
android:value="false" />
然后您可以从crashlytics获取报告,并在您自己的UncaughtExceptionHandler中捕获错误。
它可以在我的API27手机上使用crashlytics:2.10.1感谢您的响应,但这不会向crashlytics报告致命异常。我也做了类似的事情,但还不能确定如何将此记录为crashlytics的致命异常。感谢您的响应,但这不会向crashlytics报告致命异常。我也做了类似的事情,但还不能确定如何将此记录为crashlytics的致命异常。感谢您的回答:)。但是,我需要记录一个严重程度不同于非致命异常的异常,以便隔离问题中的异常。难道没有任何干净的方法来实现这一点吗?据我所知,只有两类异常,致命(崩溃时)和非致命(Crashlytics.logException)。我需要第三个,以便在发生此类事件时得到警告,因为我目前遇到致命异常。谢谢回答:)。但是,我需要记录一个严重程度不同于非致命异常的异常,以便隔离问题中的异常。难道没有任何干净的方法来实现这一点吗?据我所知,只有两类异常,致命(崩溃时)和非致命(Crashlytics.logException)。我需要第三个,以便在发生此类事件时得到警告,因为我目前受到致命异常的警告。