Как исправить зависание инспектора виджетов Dart DevTools, показывающее круговой индикатор выполнения?
У меня произошел сбой приложения Flutter, когда я отлаживал его со страницы «Ведение журнала» Dart DevTool. После того, как это произошло, все, что я вижу, когда начинаю отладку, - это то, что инспектор виджетов показывает круговой индикатор выполнения. Сейчас я тестирую приложение Flutter по умолчанию, поэтому в моем коде этого нет. Я несколько раз пытался перезагрузить компьютер, и поведение не изменилось.
В ответ на аналогичную проблему (сбои / зависания инспектора Flutter в Visual Studio Code ) предлагается добавить
Приветствуются любые идеи о том, как я могу это исправить! Если их нет, думаю, мне придется попробовать удалить и переустановить Flutter и Dart, чтобы посмотреть, решит ли это проблему.
>flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 2.2.1, on Microsoft Windows [Version 10.0.19041.1052], locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[√] Chrome - develop for the web
[√] Android Studio (version 4.1.0)
[√] VS Code (version 1.56.2)
[√] Connected device (2 available)
• No issues found!
>flutter clean
Deleting build... 132ms
Deleting .dart_tool... 4.4s
Deleting .packages... 3ms
Deleting Generated.xcconfig... 4ms
Deleting flutter_export_environment.sh... 2ms
Deleting .flutter-plugins-dependencies... 3ms
Deleting .flutter-plugins... 4ms
>flutter pub get
Running "flutter pub get" in default_app... 1,273ms
>flutter pub global run devtools
>flutter run -d chrome
1 ответ
Наконец я достиг точки, когда у меня было время восстановиться, если переустановка не удалась, поэтому вот что я сделал, чтобы решить эту проблему:
cd {installdir}\flutter
git clean -xfd
git stash save --keep-index
git stash drop
git pull
flutter doctor
rem • No issues found!
Проблема, вероятно, была исправлена на этом этапе, но я пошел дальше и сделал следующее (за исключением двух шагов rem, которые я делаю только при попытке выяснить проблемы с зависимостями пакетов):
cd {projectsdir}\appname
flutter pub upgrade
rem flutter pub outdated
rem flutter pub deps -s list
flutter clean
flutter pub get
cd ..
code appname // Open folder in VScode
<F5>
На этом этапе DevTools Widget Inspector и Logging снова работают !!
Спасибо Suragch, который опубликовал шаги Git в ответ на вопрос Как полностью и правильно удалить Flutter с Mac?.
Было бы неплохо добавить эту информацию на страницу установки Flutter Windows, но я не знаю, как это даже предложить.
Последние мысли
Могут возникнуть проблемы, когда это обновление не работает. В этом случае - и в том случае, если flutter не был установлен в качестве репозитория git - я считаю, что исправление будет следующим:
* delete the flutter directory where you installed flutter,
* remove the paths related to flutter from your environment variable PATH, and
* install Flutter per the install page.
Предупреждаю, что я не тестировал этот подход! Если кто-то столкнется с проблемой, которая заставит его прибегнуть к этому исправлению, будет приветствоваться публикация ответа здесь.