在 Android 上,Crashlytics 能否“看到”服务中发生的崩溃?

Posted

技术标签:

【中文标题】在 Android 上,Crashlytics 能否“看到”服务中发生的崩溃?【英文标题】:On Android, can Crashlytics "see" crashes that happen in a service? 【发布时间】:2015-10-23 13:52:26 【问题描述】:

我是 Crashlytics 的新手,我只是通过在我的部分应用程序中抛出异常来测试它。

如果我在活动中单击按钮引发异常,我会收到报告。

如果我在

中抛出 RuntimeException
onHandleIntent(Intent intent)   ...  

在 IntentService 中,Crashlytics 似乎没有捕捉到这一点。

问题:我必须做什么才能从服务中的崩溃中获取报告? Brownie 指出了更多关于 Crashlytics 从主 UI 线程以外的线程报告事情的信息。

【问题讨论】:

【参考方案1】:

事实上,我不确定服务是否需要这样做,但可以像这样手动报告:

try 
  myMethodThatThrows();
 catch (Exception e) 
  Crashlytics.logException(e);
  // handle your exception here! 

见Crashlytics knowledge base

Crashlytics 还安装了一个 UncaughtExceptionHandler,它应该在所有线程上捕获错误,除非它们被某些内部 android 组件处理/丢弃/记录。

【讨论】:

以上是关于在 Android 上,Crashlytics 能否“看到”服务中发生的崩溃?的主要内容,如果未能解决你的问题,请参考以下文章

在 Android 上,Crashlytics 能否“看到”服务中发生的崩溃?

Crashlytics 插件 (2.2.2) 无法在 Android Studio (1.1.0) 上初始化

在 Crashlytics 上记录非致命错误

看不到 crashlytics

找不到插件 Fabric Android Studio 导入 com.crashlytics & io.fabric

在构建服务器上使用 APKTool 的 Crashlytics