在Android App中使用多个崩溃报告工具会产生什么影响

时间:2014-12-16 06:56:33

标签: android google-analytics crash-dumps crashlytics acra

在我的应用中,我整合了Crashlytics,ACRA和Google Analytics来报告崩溃

- >一个人对别人有任何副作用吗?

- >哪一个更好用。

- >崩溃报告工具如何工作,如果遇到崩溃,其他人将如何报告相同的崩溃?

3 个答案:

答案 0 :(得分:2)

在一个项目中同时使用多个崩溃报告解决方案可能会使您的应用程序陷入并发问题,应用程序最终会在任何崩溃时永远挂起。

崩溃报告解决方案以某种方式拦截未捕获的崩溃。流程基本相同:

  1. 拦截未捕获的崩溃;
  2. 记录它以便能够向服务器发送信息;
  3. 重新抛出崩溃,以便应用程序最终崩溃。
  4. 根据上面的步骤,我可以想象一种情况,即2个崩溃报告解决方案会创建一个无限循环,永远地将相同的异常抛给对方。

    至少,当我使用 Google Analytics (崩溃报告开启)和 Crashlytics 。该应用程序在没有任何明显崩溃的情况下永远被绞死,直到我最终将Google Analytics 崩溃报告关闭

答案 1 :(得分:1)

崩溃分析工具可能正在使用全局异常处理,如此https://stackoverflow.com/a/8877177/1602333中的整个应用程序来处理未捕获的异常。

因此,如果您使用多个崩溃分析工具,则每个工具都可以替换全局异常处理程序

答案 2 :(得分:1)

  

一方对他人有任何副作用吗?

Google Analytics并不是很好用。我在实施前几天创建了Google Analytics帐户。它没有被使用,甚至没有被复制(代码),当我回来插入谷歌分析时,我必须得到代码。没有人使用谷歌分析版本的应用程序,它甚至没有发布,它有很多用法记录。我不喜欢谷歌分析,因为代码很容易破解,并且第三方网站未经同意就使用该代码甚至在您的网站上添加虚假点击时使用。

另外,Google Analytics只会在强制记录时进行处理。由于它不是专用的崩溃分析工具,因此不会记录ACRA,Crashalytics和Firebase崩溃等崩溃事件。

  

哪一个更好用。

这真的取决于你,但我个人觉得ACRA更好,因为你可以在你自己的网站上使用后端。如果网站出现故障,ACRA也是如此,因此确实可以控制网站的恢复。

此外,如果您想使用自己的网站,还有很多后端。如果你找不到一个有效的,你可以创建一个。 Crashalytics和Firebase在各自的页面上依赖自己的仪表板,这意味着要记住另一个密码和用户名。

  

崩溃报告工具如何工作,如果遇到崩溃,其他人将如何报告相同的崩溃?

见Drew的回答