Как исправить зависание инспектора виджетов Dart DevTools, показывающее круговой индикатор выполнения?

У меня произошел сбой приложения Flutter, когда я отлаживал его со страницы «Ведение журнала» Dart DevTool. После того, как это произошло, все, что я вижу, когда начинаю отладку, - это то, что инспектор виджетов показывает круговой индикатор выполнения. Сейчас я тестирую приложение Flutter по умолчанию, поэтому в моем коде этого нет. Я несколько раз пытался перезагрузить компьютер, и поведение не изменилось.

В ответ на аналогичную проблему (сбои / зависания инспектора Flutter в Visual Studio Code ) предлагается добавить в мой файл VSCode settings.json. Я попробовал это и по-прежнему получаю такое же поведение, только в окне браузера. В сторону: похоже, это говорит о том, что проблема не в VSCode. Наконец, я также попытался запустить приложение из командной строки и напрямую запустить сервер приложений DevTools- та же проблема.

Приветствуются любые идеи о том, как я могу это исправить! Если их нет, думаю, мне придется попробовать удалить и переустановить 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.

Предупреждаю, что я не тестировал этот подход! Если кто-то столкнется с проблемой, которая заставит его прибегнуть к этому исправлению, будет приветствоваться публикация ответа здесь.

Другие вопросы по тегам