谷歌应用商店控制台中ANR的堆栈跟踪不可用。

11

在调试ANR时遇到了问题。在上一次版本中修复几个ANR之后,突然遇到了最高的ANR没有任何堆栈跟踪。

输入图像描述在这里

不知道问题出在哪里。我的代码中还包含本地代码。


2
我也遇到了同样的问题.. 加油,Google! - Papps
1
你有什么好的解决方法吗?我也遇到了完全相同的问题,这是我最头疼的两个ANR问题之一。 - casolorz
1
由于谷歌在ANR方面没有提供足够的帮助,您可以尝试使用一个方便的工具,名为ANR-WatchDog https://github.com/SalomonBrys/ANR-WatchDog。 - Sabet Chowdhury
谢谢您提供的链接,如果没有进行严格测试,我会有点害怕在生产环境中使用它,但我一定会进行测试,即使只是为了查看我的应用程序中哪些部分需要更长时间。谢谢。 - casolorz
1个回答

1

谷歌没有更新。但是,可以像Sabet在评论中提到的那样使用github.com/SalomonBrys/ANR-WatchDog这个非常方便的工具,易于集成和使用。我将其与firebase crashlytics一起使用。它提供比谷歌更好的日志/堆栈跟踪。

它如何工作

看门狗是一个简单的线程,循环执行以下操作:

  1. 安排一个可运行的线程在尽可能快地运行UI线程上运行。
  2. 等待5秒钟。(5秒是默认值,但可以进行配置)。
  3. 查看可运行线程是否已运行。如果已运行,则返回1。
  4. 如果可运行线程未运行,这意味着UI线程已经被阻塞了至少5秒钟,它将使用所有正在运行的线程堆栈跟踪引发错误。

我有一个问题,您说的是输入超时ANR是如何工作的,那我为什么需要使用ANR-WatchDog呢? - Kevin Ding
这将为您提供完整的日志,有时Google不提供。如果您看到问题,堆栈跟踪为空。 - Abhishek Kumar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接