获取并阅读 bug 报告 |
您所在的位置:网站首页 › 开发者选项安卓11 › 获取并阅读 bug 报告 |
bug 报告包含设备日志、堆栈轨迹和其他诊断信息,有助于您查找和修复应用中的 bug。若要从设备获取 bug 报告,请使用设备上的生成 bug 报告开发者选项、使用 Android 模拟器菜单或使用开发机器上的 adb bugreport 命令。 ![]() 图 1. 设备上的开发者选项。 如需生成 bug 报告,您必须在设备上启用开发者选项,才能使用生成 bug 报告选项。 从设备上获取 bug 报告![]() 图 2. bug 报告已准备就绪。 如需直接从您的设备获取 bug 报告,请执行以下操作: 启用开发者选项。 在开发者选项中,点按生成 bug 报告。 选择所需的 bug 报告类型,然后点按报告。片刻之后,您便会收到 bug 报告已准备就绪的通知,如图 2 所示。 如需分享 bug 报告,请点按该通知。 从 Android 模拟器上获取 bug 报告在 Android 模拟器中,您可以使用“Extended controls”窗口中的 File a bug 功能: 点击模拟器面板中的 More 图标![]() 在 Extended controls 窗口中选择 Bug report。 此时系统会打开一个屏幕,您可以在其中查看 bug 报告详细信息,例如屏幕截图、AVD 配置信息和 bug 报告日志。您还可以输入一条包含重现步骤的消息,以便与报告一起保存。 等待 bug 报告完成收集,然后点击 Save Report。 使用 adb 获取 bug 报告如果您只连接了 1 部设备,则可以使用 adb 获取 bug 报告,如下所示: $ adb bugreport E:\Reports\MyBugReports如果您未为 bug 报告指定路径,系统会将其保存到本地目录。 如果您连接了多部设备,则必须使用 -s 选项指定设备。运行以下 adb 命令可获取设备序列号并生成 bug 报告: $ adb devices List of devices attached emulator-5554 device 8XV7N15C31003476 device $ adb -s 8XV7N15C31003476 bugreport 保存旧版 bug 报告默认情况下,bug 报告会保存在 /bugreports 中,可使用以下命令查看: $ adb shell ls /bugreports/ bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS-dumpstate_log-yyy.txt bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS.zip dumpstate-stats.txt然后,您可通过 adb pull 拉取该 ZIP 文件: $ adb pull /bugreports/bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS.zip 检查 bug 报告 ZIP 文件默认情况下,ZIP 文件称为 bugreport-BUILD_ID-DATE.zip。ZIP 文件可以包含多个文件,但最重要的文件是 bugreport-BUILD_ID-DATE.txt。此文件就是 bug 报告,它包含系统服务 (dumpsys)、错误日志 (dumpstate) 和系统消息日志 (logcat) 的诊断输出。系统消息包括设备抛出错误时的堆栈轨迹,以及从所有应用中使用 Log 类写入的消息。 ZIP 文件包含一个 version.txt 元数据文件,后者包含 Android 版本字母。启用 systrace 后,ZIP 文件还会包含 systrace.txt 文件。Systrace 工具可以获取并显示应用进程和其他 Android 系统进程的执行时间,从而帮助分析应用的性能。 dumpstate 工具会将文件从设备的文件系统复制到 ZIP 文件的 FS 文件夹下,以便您引用它们。例如,设备中的 /dirA/dirB/fileC 文件会在 ZIP 文件中生成 FS/dirA/dirB/fileC 条目。
图 3. bug 报告文件结构。 如需了解详情,请参阅阅读 bug 报告。 从用户那里获取报告您自己使用应用时,获取 bug 报告非常有用,但最终用户无法轻松地与您分享这些类型的 bug 报告。如需从真实用户那里获取包含堆栈轨迹的崩溃报告,请利用 Google Play 和 Firebase 的崩溃报告功能。 Google Play 管理中心您可以从 Google Play 管理中心获取报告,以便查看从 Google Play 安装您的应用的用户那里收集的有关崩溃和应用无响应 (ANR) 错误的数据。您可以查看过去六个月的数据。 如需了解详情,请参阅 Play 管理中心帮助内的查看崩溃和应用无响应 (ANR) 错误。 Firebase 崩溃报告Firebase Crashlytics 报告会创建有关应用中出现的错误的详细报告。此报告会基于相似堆栈轨迹将错误分门别类,并会根据错误对用户所产生影响的严重程度进行分级。除自动发送的报告外,您还可以通过记录自定义事件获知导致应用崩溃的操作。 如需开始接收任何用户的崩溃报告,请向您的 build.gradle 文件添加 Firebase 依赖项。如需了解详情,请参阅 Firebase Crashlytics。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |