如何在Flutter网站中进行调试或打印?

时间:2019-11-10 06:20:07

标签: debugging flutter flutter-web

我正在使用targetFlutter 1.10.15进行Flutter Web开发,而我的事业如此!问题是我无法调试,甚至无法在控制台中打印内容,因为当我按下工具栏上的“运行”或“调试”按钮时,Android Studio 3.5.1中仅显示白页。

运行项目的唯一方法是在Web服务器模式下使用以下命令,并在chrome弹出窗口中显示变量值和异常:

AlertDialog

谁能告诉我解决方案?

5 个答案:

答案 0 :(得分:3)

如果您使用的是VSCode,请打开 .vscode 文件夹中的 launch.json 并添加以下参数:

"--web-port=5000"
"--web-enable-expression-evaluation"

以下是完整的 launch.json 文件的示例:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "web",
            "program": "lib/main.dart",
            "request": "launch",
            "type": "dart",
            "args": [
                "--web-port=5000",
                "--web-enable-expression-evaluation"
            ],
        },
    ]
}

使用此配置,您可以使用断点开始在VSCode中调试Flutter Web应用。

答案 1 :(得分:1)

Flutter Channel beta, 1.18.0-11.1.pre

您可以在控制台中进行打印,也可以在Android Studio和Chrome中同时进行调试。

  • 为此,您需要从下拉菜单中选择Chrome(网络)。 Web服务器(web)对我不起作用。

Targer device

  • 点击“调试”按钮,然后等待,以打开新窗口。
  • 将断点放在AS中,而不是在Chrome中。

Breakpoint

  • 打开Chrome的开发者工具。
  • 点击加号按钮或其他击键点。
  • 检查Chrome中的Dart代码。

Chrome's Developer tools

顺便说一句,print在Chrome和AS的控制台中均可打印。

答案 2 :(得分:0)

目前不可能,Flutter Web仍处于技术预览版,甚至不是Beta版。 您可以在11月底之前获得有关此功能的一些更新:https://github.com/Dart-Code/Dart-Code/issues/1773

答案 3 :(得分:0)

我终于发现Google Chrome DevTools功能的“控制台”部分显示了在Flutter Web模式下运行项目时以Web-Server的飞镖代码编写的所有打印件。 这是在Web-Server模式下,Android Studio控制台中不会显示任何打印品。

答案 4 :(得分:0)

在Android Studio for Web上调试 Flutter beta v1.17.0 及更高版本

对于较旧的版本,请使用:Flutter beta v1.14.6

如果仍然无法运行,请运行flutter clean

升级:android Studio中的dart,flutter插件