如何在Android中记录硬查找崩溃?

时间:2014-12-11 04:35:50

标签: java android nullpointerexception adb

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

e.g。

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

然而,对于正常崩溃,例如stackoverflow(故意),它可以被记录,但是对于我的bug,它永远不会被记录。 我想这是因为崩溃是在正常活动范围之外引起的。 (是的,当应用程序在后台时发生崩溃)

我还尝试将设备连接到我的计算机并通过adb logcat > log.txt将logcat记录下来,但adb会暂停一段时间(adb设备返回未连接,直到我重新连接再次插上它,记录将停止。

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

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

2 个答案:

答案 0 :(得分:1)

是的,我的兄弟!

您可以使用CrashAnalytics

只需转到此链接https://crashlytics.com并将您的邮件ID用于验证,在获得批准邮件后,您可以注册您的电子邮件ID并使用这些服务,您也可以获得所有崩溃和设备信息。对于批准,需要一到两天的时间

我希望这会对你有所帮助。

获取崩溃日志是永久的解决方案。您还可以在google play上传构建版本后获取崩溃日志,并且可以分配多个电子邮件以获取崩溃日志以供参考。

答案 1 :(得分:1)

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

https://try.crashlytics.com/

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

https://github.com/ACRA/acra

仅举几例......