crashlytics接入后不上报crash的问题

crashlytics接入十分简单,安装android studio的fabric插件,一路点击鼠标即可,一个字符的代码都不用敲。

不过接入后可能会发现crash不上报啊,这个太坑了,笔者就正好遇到了这个问题。

官方文档中也写了解决方法,就是把crashlytics的初始化代码挪到其他三方库初始化之后就OK了。

其实这个原因大概也能猜测出来。java捕捉未捕获异常使用的是UncaughtExceptionHandler

Thread.setDefaultUncaughtExceptionHandler(你实现的UncaughtExceptionHandler)

这个是单例的,当然目前大家都会使用

Thread.getDefaultUncaughtExceptionHandler()

获取并保存当前的UncaughtExceptionHandler,然后在回调中运行完自己代码后,再运行保存的UncaughtExceptionHandler的代码,如果所有地方都这样写代码的话也没啥问题,问题就是这个假定太理想了。

所以最后初始化并使用UncaughtExceptionHandler肯定没有问题。

猜你喜欢

转载自blog.csdn.net/firedancer0089/article/details/83385790
今日推荐