Saltar al contenido principal

Crear informes de errores útiles

Dónde enviar reportes de errores y solicitudes de mejoras para Flutter y el sitio web.

Las instrucciones de este documento detallan los pasos actuales necesarios para proporcionar los reportes de errores más accionables para fallos y otros comportamientos incorrectos. Cada paso es opcional, pero mejorará enormemente la rapidez con la que se diagnostican y solucionan los problemas. Apreciamos tu esfuerzo al enviarnos todos los comentarios posibles.

Crear un issue en GitHub

#

Proporcionar un ejemplo de código reproducible mínimo

#

Crea una app Flutter mínima que muestre el problema con el que te estás enfrentando, y pégala en el issue de GitHub.

Para crearla puedes usar el comando flutter create bug y actualizar el archivo main.dart.

Alternativamente, puedes usar DartPad, que es capaz de crear y ejecutar pequeñas apps Flutter.

Si tu problema va más allá de lo que se puede colocar en un solo archivo, por ejemplo tienes un problema con canales nativos, puedes subir el código completo de la reproducción a un repositorio separado y vincularlo.

Proporcionar algunos diagnósticos de Flutter

#
  • Ejecuta flutter doctor -v en el directorio de tu proyecto y pega los resultados en el issue de GitHub:
[✓] 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

Ejecutar el comando en modo verbose

#

Sigue estos pasos solo si tu issue está relacionado con la herramienta flutter.

  • Todos los comandos de Flutter aceptan el flag --verbose. Si se adjunta al issue, la salida de este comando podría ayudar a diagnosticar el problema.
  • Adjunta los resultados del comando al issue de GitHub. flutter verbose

Proporcionar los logs más recientes

#
  • Se accede a los logs del dispositivo actualmente conectado usando flutter logs.
  • Si el fallo es reproducible, limpia los logs (⌘ + k en Mac), reproduce el fallo y copia los logs recién generados en un archivo adjunto al reporte de errores.
  • Si se están lanzando excepciones por parte del framework, incluye toda la salida entre e incluyendo las líneas de guiones de la primera excepción de este tipo. flutter logs

Proporcionar el reporte de fallo

#
  • Cuando el simulador de iOS falla, se genera un reporte de fallo en ~/Library/Logs/DiagnosticReports/.
  • Cuando un dispositivo iOS falla, se genera un reporte de fallo en ~/Library/Logs/CrashReporter/MobileDevice.
  • Busca el reporte correspondiente al fallo (usualmente el más reciente) y adjúntalo al issue de GitHub. reporte de fallo