在我对少数Android设备的有限经验中,如果某个应用程序因未处理的异常而崩溃,那么该异常会写入日志。但是,我遇到了没有的三星i8160。其他带有各种ROM的i8160可以。实际上,从启动开始,它不会记录任何内容。它起源于eBay所以历史不清楚,但不是假设它是一个奇怪的ROM并闪烁其他东西我认为值得坚持以防问题在其他地方再次出现。
在研究中,首先要尝试的是“拨打”*#*#2846579#*#*
,但这不会被识别 - 它只是试图真正拨打它。有一个较短的*#9900#
会弹出一个菜单,但只允许我将日志和其他信息转储到/ data / log中的文件以便导出。由于日志记录不是从引导启动的,因此导出不会很多。
最初,/ dev / log不存在。解决此问题的一个建议是从shell中尝试logcat-enable
。找不到。另一个建议是通过从root shell运行insmod /lib/modules/logger.ko
来手动加载日志记录模块。这会带来日志记录,但是当应用程序崩溃时,所有logcat输出都是
I/dumpstate( 8074): begin
I/dumpstate( 8074): done
我找到了dumpstate文件,其中包含logcat输出,但它也只是注意到转储的创建,而不是引起它的异常。
除了启动模块之外,我假设某处有一些配置确定应用程序崩溃时要采取的操作,并且这里没有设置转储异常并将跟踪堆栈到日志,因为无论谁做了它都会计算日志记录无论如何都要跑。但我找不到这样的东西。有没有人对如何进一步发展有任何想法?
答案 0 :(得分:0)
某些应用有#34;报告"内置的功能,以防他们的应用程序崩溃。当您选择ANR消息的报告时,通常会创建一个日志以将其发送给开发人员。也许你可以让一个应用程序崩溃并捕获该日志(或者可能自己创建一个)