23

我正在测试一个具有长期运行服务的 android 应用程序。我正在使用 Eclipse 并将 USB 线与坐在我旁边的电话连接起来。由于它是一项长期持续的服务,因此我在它运行时会做一些其他工作,并每隔一段时间检查一次 logcat 日志,以确保一切都按预期进行。

几分钟前,我注意到手机重新启动。我认为它之前已经这样做了,因为它会解释一些奇怪的应用程序行为。我迅速切换到 Eclipse 以查看发生了什么,发现 logcat 日志(似乎)在重新启动期间被清除。因此,没有日志记录我的应用程序是否崩溃(并关闭了手机?!),或者是否有其他问题导致手机和我的应用程序崩溃。

无论如何我可以找出发生了什么吗?这是一款开发手机,所以我不知道它是否经常自行重启/崩溃,或者仅在我的应用程序运行时。这是一个运行固件版本 2.1-update1 的摩托罗拉 Droid。

谢谢你的帮助。

4

3 回答 3

17

我不知道有什么方法可以做到这一点。但是,您可以启动 logcat,adb然后adb logcat -v time > logcat.txt再次运行您的应用程序。如果它第二次崩溃,那么你可以去看看logcat.txt你机器上的输出。

于 2010-08-12T15:11:56.690 回答
13

你可以使用adb bugreport,它应该包含一些关于虚假重启的信息——例如,内核恐慌、最后的 logcat 条目等。

但是请注意:此工具会输出大量信息,因此您必须深入挖掘才能找到所需的信息。

于 2010-08-12T16:56:57.363 回答
0

我也遇到过这个问题。应该可以编写一个应用程序,将 logcat 输出连续保存到 SD 卡上的文件中。市场上有显示 logcat 输出的应用程序,所以我知道它可以从应用程序中访问。

@djv,我无法在手机的根目录或 /data 中找到 /log 目录。

于 2010-08-12T15:25:10.883 回答