创建有用的错误报告
本文档中的说明详细说明了目前提供最可操作的错误报告(针对崩溃和其他不良行为)所需的步骤。每个步骤都是可选的,但将极大地提高诊断和解决问题的速度。感谢您尽最大努力向我们发送反馈。
在 GitHub 上创建问题
#- 要报告 Flutter 崩溃或错误,请在 flutter/flutter 项目中创建问题。
- 要报告网站问题,请在 flutter/website 项目中创建一个 issue。
提供最小的可重现代码示例
#创建一个最小的 Flutter 应用,展示您遇到的问题,并将代码粘贴到 GitHub issue 中。
您可以使用 flutter create bug
命令创建应用,并更新 main.dart
文件。
或者,您可以使用DartPad,它能够创建和运行小型 Flutter 应用。
如果您的问题无法在一个文件中描述,例如您遇到了原生通道的问题,您可以将完整的复现代码上传到一个单独的仓库中,并提供链接。
提供一些 Flutter 诊断信息
#- 在您的项目目录中运行
flutter doctor -v
并将结果粘贴到 GitHub issue 中。
[✓] Flutter (Channel stable, 1.22.3, on Mac OS X 10.15.7 19H2, locale en-US)
• Flutter version 1.22.3 at /Users/me/projects/flutter
• Framework revision 8874f21e79 (5 days ago), 2020-10-29 14:14:35 -0700
• Engine revision a1440ca392
• Dart version 2.10.3
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /Users/me/Library/Android/sdk
• Platform android-30, build-tools 29.0.2
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.2)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.2, Build version 12B5035g
• CocoaPods version 1.9.3
[✓] Android Studio (version 4.0)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 50.0.1
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
[✓] VS Code (version 1.50.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.13.2
[✓] Connected device (1 available)
• iPhone (mobile) • 00000000-0000000000000000 • ios • iOS 14.0
以详细模式运行命令
#仅当您的问题与 flutter
工具相关时,才执行以下步骤。
- 所有 Flutter 命令都接受
--verbose
标记。如果将其附加到 issue 中,则此命令的输出可能有助于诊断问题。 - 将命令的结果附加到 GitHub issue 中。
提供最新的日志
#- 当前连接设备的日志可以通过
flutter logs
访问。 - 如果崩溃可以复现,请清除日志(在 Mac 上按 ⌘ + k),复现崩溃并复制新生成的日志到一个文件中,并将其附加到错误报告中。
- 如果您遇到框架抛出的异常,请包含第一个此类异常的虚线之间(包括虚线)的所有输出。
提供崩溃报告
#- 当 iOS 模拟器崩溃时,会在
~/Library/Logs/DiagnosticReports/
中生成崩溃报告。 - 当 iOS 设备崩溃时,会在
~/Library/Logs/CrashReporter/MobileDevice
中生成崩溃报告。 - 找到与崩溃对应的报告(通常是最新的),并将其附加到 GitHub issue 中。
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面最后更新于 2024-04-04。 查看源代码 或 报告问题.