我有一个几乎每天崩溃一次的应用程序,并且使用默认的未捕获异常处理程序来保存崩溃日志

例如

Thread.setDefaultUncaughtExceptionHandler(new CustomExceptionHandler("/sdcard/crash"));


但是,对于正常的崩溃,例如stackoverflow(故意的),可以将其记录下来,但是对于我的错误,它永远不会被记录。我猜是因为崩溃是在正常活动范围之外引发的。 (是的,当应用程序在后台运行时发生崩溃)

我也尝试过将设备连接到计算机并通过adb logcat > log.txt注销logcat,但是,adb会超时一段时间(adb设备返回,直到我再次将其重新插入之前,它都未连接)。即将结束。

那么,还有其他方法可以用来记录和识别我的错误吗?

更新:对于那些建议使用其他远程日志记录工具的人,我想说的是我已经在使用setDefaultUncaughtExceptionHandler将异常保存到本地文件中,是否有任何例外,这些工具可以提供帮助,但不能提供我当前的方法?我仅用于调试,而不用于生产

最佳答案

还有其他一些Crash Reporting库...

https://try.crashlytics.com/

http://hockeyapp.net/features/crashreports/

https://github.com/ACRA/acra

仅举几个...

关于java - 如何在Android中记录难以发现的崩溃?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27415434/

10-10 01:07
查看更多