如何修复卡住显示圆形进度指示器的 Dart DevTools Widget Inspector?

问题描述

我在 Dart DevTool 的“日志记录”页面调试 Flutter 应用程序时发生了崩溃。发生这种情况后,当我开始调试时,我看到的只是 Widget Inspector 显示一个循环进度指示器。我现在正在使用 Flutter 认应用程序进行测试,因此它不在我的代码中。我已经尝试重新启动计算机几次,但行为没有改变。

对类似问题 (Flutter inspector bugging out/freezing in Visual Studio Code) 的回答建议将 dart.embedDevTools": false, 添加到我的 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

解决方法

如果重新安装失败,我终于有时间恢复,所以我采取了以下措施来解决这个问题:

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 在对 How do you uninstall Flutter completely and properly from a Mac? 的回答中发布了 Git 步骤。

将此信息添加到 Flutter Windows install page 会很好,但我什至不知道如何建议。

最后的想法

可能会出现此刷新不起作用的问题。在那种情况下——并且在没有将 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.

请注意,我还没有测试过这种方法!如果有人遇到迫使他们采取此修复程序的问题,请在此处发布答案。