我正在使用我以封闭式Alpha格式上传到Google Developer面板的应用。我设法在我的手机上复制了一个崩溃,但我不知道如何发回这些信息,所以我可以看到发生了什么。
答案 0 :(得分:1)
抱歉,我参加聚会太晚了,但我希望这对其他人有帮助。根据Android开发者官方网站:
捕获并读取错误报告 错误报告包含设备日志,堆栈跟踪和其他诊断信息,可帮助您查找和修复应用程序中的错误。您可以使用设备上的“获取错误报告开发者”选项,Android仿真器菜单或开发计算机上的adb bugreport命令来捕获设备中的错误报告。
图1.开发人员选项
要获取错误报告,您必须在设备上启用开发人员选项,以便您可以访问“获取错误报告”选项。
从设备捕获错误报告
图2.错误报告已准备就绪
要直接从设备获取错误报告,请执行以下操作:
确保已启用“开发人员选项”。 在开发人员选项中,点击获取错误报告。 选择所需的错误报告类型,然后点击“报告”。 片刻之后,您会收到一条通知,指出错误报告已准备就绪(参见图2)。
要共享错误报告,请点击通知。 从Android模拟器捕获错误报告 在Android模拟器中,您可以在扩展控件中使用“记录错误”功能:
在仿真器面板中单击“更多”。 在“扩展控件”窗口中,选择左侧的错误报告。
这将打开一个屏幕,您可以在其中查看错误报告的详细信息,例如屏幕截图,AVD配置信息和错误报告日志。您还可以键入带有复制步骤的消息,以与报告一起保存。
等待错误报告完成收集,然后单击“保存报告”。
使用adb捕获错误报告 如果仅连接了一个设备,则可以使用adb获取错误报告,如下所示:
$ adb bugreport E:\ Reports \ MyBugReports
如果您未指定错误报告的路径,则会将其保存到本地目录。
如果连接了多个设备,则必须使用-s选项指定设备。运行以下adb命令以获取设备序列号并生成错误报告。
$个adb设备 连接的设备列表 emulator-5554设备 8XV7N15C31003476设备
$ adb -s 8XV7N15C31003476错误报告
检查错误报告ZIP文件 默认情况下,ZIP文件名为bugreport-BUILD_ID-DATE.zip,它可能包含多个文件,但是最重要的文件是bugreport-BUILD_ID-DATE.txt。这是错误报告,其中包含系统服务的诊断输出(dumpsys),错误日志(dumpstate)和系统消息日志(logcat)。系统消息包括当设备抛出错误时的堆栈跟踪,以及从所有具有Log类的应用程序写入的消息。
ZIP文件包含一个version.txt元数据文件,该文件包含Android发行信,并且在启用systrace时,该ZIP文件还包含一个systrace.txt文件。 Systrace工具通过捕获和显示应用程序进程和其他Android系统进程的执行时间来帮助分析应用程序的性能。
dumpstate工具将文件从设备的文件系统复制到FS文件夹下的ZIP文件中,以便您进行引用。例如,设备中的/ dirA / dirB / fileC文件将在ZIP文件中生成FS / dirA / dirB / fileC条目。
图3.错误报告文件结构
有关更多信息,请参阅阅读错误报告。
获取用户的报告 如上所述,捕获错误报告对您自己使用该应用程序很有帮助,但是最终用户无法轻松地与您共享这些类型的错误报告。要获得真实用户的堆栈跟踪崩溃报告,您应该利用Google Play和Firebase的崩溃报告功能。
Google Play控制台 您可以从Google Play控制台获取报告,以查看崩溃数据和应用程序未响应(ANR)错误,这些用户是从Google Play安装您的应用程序的。可以提供前六个月的数据。
有关详细信息,请参阅Play控制台帮助中的查看崩溃和应用程序无响应(ANR)错误。
Firebase崩溃报告 Firebase Crashlytics报告创建有关应用程序中错误的详细报告。根据具有相似堆栈跟踪的信息将错误归类为问题,并按对用户的影响的严重性对其进行分类。除了自动报告之外,您还可以记录自定义事件,以帮助捕获导致崩溃的步骤。
只需将Firebase依赖项添加到build.gradle文件中,即可开始接收任何用户的崩溃报告。有关更多信息,请参阅Firebase Crashlytics。
答案 1 :(得分:0)
<强> ACRA 强>
ACRA是一个库,可让Android应用程序自动将其崩溃报告发布到GoogleDoc表单。它针对Android应用程序开发人员,帮助他们在崩溃或行为错误时从应用程序中获取数据。