【问题标题】:How do I fix Dart DevTools Widget Inspector that is stuck showing a circular progress indicator?如何修复 Dart DevTools Widget Inspector 卡住显示圆形进度指示器?
【发布时间】:2021-08-26 22:30:46
【问题描述】:

我在从 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

【问题讨论】:

    标签: flutter dart flutter-devtools


    【解决方案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 在回复 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.
    

    请注意,我还没有测试过这种方法!如果有人遇到迫使他们求助于此修复程序的问题,我们将不胜感激。

    【讨论】: