我正在开发一个Android应用程序。我的应用经常崩溃。我想将logcat消息保存在sd卡中,同时使应用程序崩溃以找到根本原因。有什么办法吗?

最佳答案

一些想法可能会帮助您迈向全自动崩溃日志收集。我们还没有在这里推出一个完整的系统,运气很好,只是在设备崩溃或从我们的质量检查小组索取更多信息后才抓住设备,但是:


ACRA相对容易实现,即使您没有实现,源代码也位于github上供您浏览。
相关问题Android crash reporting library (pre Froyo)具有许多链接和解决方案,包括android-remote-stacktrace,前述的ACRA,Android-Error-Reporter和其他商业解决方案。
有些设备会自动捕获崩溃输出,您可以通过adb pull /data/log/dumpstate_app_native.txt.gz或类似方法捕获它-路径应显示在logcat中。但是,每次崩溃时,这些往往会被覆盖。 (如果有人能回答这是制造商特定的功能还是某些版本的android核心中出现的功能,我想知道!)
您可以获取一个logcat应用,例如aLogCat或许多其他可以安装在设备上的文件。
TestFlight即将进入Android的Beta版;他们在iOS上有崩溃报告,在Android上也应该有崩溃报告,并且使用他们的服务还有其他许多可爱的好处-而且根据我们的经验,集成真的很容易。


如果要在应用程序内部滚动,则需要READ_LOGSWRITE_EXTERNAL_STORAGE清单权限(即使是本地版本),也可以使用日志记录API或常规File.copy甚至系统调用logcat本身。问题的“相关”链接中有很多选项和示例:


Stream android logcat output to an sd card
How to redirect my log output from logcat to the SD-Card on an android device?
...等等。


希望这会有所帮助。

关于android - 崩溃时在SD卡中写入logcat消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16385901/

10-12 00:32
查看更多