Отладка осуществляется с помощью стандартных средств IDE (Android Studio, VS Code), поддерживающих Flutter/Dart, а также с использованием flutter doctor и DevTools.
Основные способы отладки:
- Точки останова (Breakpoints): Установка точек останова в коде для остановки выполнения и пошагового анализа.
- Пошаговое выполнение (Stepping):
- Step Over (F10): Выполнение текущей строки и переход к следующей.
- Step Into (F11): Переход внутрь вызываемой функции.
- Step Out (Shift + F11): Завершение выполнения текущей функции и возврат к вызывающему коду.
- Просмотр переменных (Variables View): Мониторинг значений переменных в текущем контексте выполнения.
- Консоль отладки (Debug Console): Вывод логов и сообщений с помощью
print() или пакета logging.
- Горячая перезагрузка (Hot Reload) и Горячая перезагрузка с сохранением состояния (Hot Restart):
- Hot Reload (Ctrl+R / Cmd+R): Быстрое обновление UI с сохранением состояния приложения.
- Hot Restart (Shift+Ctrl+R / Shift+Cmd+R): Полная перезагрузка приложения без сохранения состояния.
- Flutter DevTools: Комплексный набор инструментов для профилирования производительности, анализа памяти, просмотра дерева виджетов, диагностики ошибок рендеринга и сетевых запросов. Доступен через браузер или интегрирован в IDE.
flutter doctor: Диагностика состояния установки Flutter и необходимых зависимостей.
debugPrint / log: Использование debugPrint (из package:flutter/foundation.dart) вместо print в Flutter-приложениях для предотвращения замедления производительности на релизных сборках. Пакет logging предоставляет более гибкие возможности.
Пример использования debugPrint:
dart
Пример использования DevTools для анализа дерева виджетов:
dart