崩溃后获得 _logcat_ 消息

什么是 logcat

当应用运行时,尤其是崩溃时,它会向 Android 系统发送一些信息以帮助诊断导致问题的原因。获得这些信息的访问权将为 F-Droid 开发人员定位问题的工作提供很多便利。这比起“F-Droid 崩溃”之类的一般错误信息要好得多。

许多会自动向开发人员发送崩溃报告,但 F-Droid 不会。这并非技术限制,而是哲学限制。我们仅在必要时尝试连接到互联网,以执行你要求的任务:下载并安装应用。这样做的缺点是,当用户告诉向我们报告崩溃时,我们需要用户提供一些帮助。 logcat 文件是你可以提供的最重要的信息,它可以帮助我们调查和修复任何 Bug,本文将介绍如何获取该文件。

如何找到 logcat 消息

有两种方法可以获取 logcat 消息。通常的方法是在你的设备上安装一个应用,该应用知道如何访问 logcat 信息。另一种方法是在你的计算机上安装 Android SDK 并通过 USB 或 Wi-Fi 获取 logcat 消息。

在你的设备上使用应用

对于那些不想在他们的计算机上安装软件以获取 logcat 消息的人,则可以下载一个应用,例如:

一般的方法是打开应用,让它开始记录 logcat 消息,然后尝试使 F-Droid 崩溃。一旦崩溃,logcat 应用将保存错误消息。然后可以将这些消息复制并粘贴到 F-Droid 问题跟踪器 中。

在 Debian 风格的系统上,尝试 apt-get install pidcat,它甚至有着色和标签完成功能!

使用 Android SDK

如果你在计算机上安装了 Android SDK,并在 Android 设置中启用了“调试”,那么当你的手机通过 USB 连接计算机时,你将能够使用 adb(命令行)或 DDMS(图形应用)工具。

安装 SDK 并能够使用 adb 工具后,运行以下命令:

adb logcat

根据你所安装/运行的应用的数量,它可能会包含一些无关信息。如果你不想把所有这些无关信息发布到网上(如果应用将私人信息记录到日志中,它可能包含你不希望在发布互联网上的信息),那么你可以通过执行以下命令来过滤掉无关信息:

adb logcat *:E

然后你可以将此信息发布到 GitLab 问题以帮助开发人员诊断问题。发布到 GitLab 时,将日志前后用三个反引号 (```) 括起来,以将它正确地格式化。