Flutter 在 Windows 10 上找不到名称或 ID 与“chrome”匹配的设备

Posted

技术标签:

【中文标题】Flutter 在 Windows 10 上找不到名称或 ID 与“chrome”匹配的设备【英文标题】:Flutter No devices found with name or id matching 'chrome' on Windows 10 【发布时间】:2020-07-02 01:18:04 【问题描述】:

我使用official guide 安装了 Flutter 测试版。 启用网络:

 flutter channel beta
 flutter upgrade
 flutter config --enable-web

结果是:

Setting "enable-web" value to "true".

You may need to restart any open editors for them to read new settings.

flutter devices 命令的结果:

>flutter devices
1 connected device:

Web Server • web-server • web-javascript • Flutter Tools

官方指南指出应该有两个设备:

Chrome     • chrome     • web-javascript • Google Chrome 78.0.3904.108
Web Server • web-server • web-javascript • Flutter Tools

我根据官方指南创建了示例应用程序并尝试构建它:

 flutter create myapp
 cd myapp
 flutter run -d chrome

结果是:

No devices found with name or id matching 'chrome'

已安装最新的 Google Chrome。我已阅读on github 可以通过设置环境变量 CHROME_EXECUTABLE 来解决问题。我尝试使用 chrome.exe 的路径和包含 chrome.exe 的文件夹的路径来设置它,但结果相同。

我执行了flutter doctor -v

[X] Chrome - develop for the web (Cannot find chrome executable at "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")
    ! "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" is not executable.

我认为问题可能出在带有空格的路径中,但在 CHROME_EXECUTABLE 中设置不同的路径并不能解决问题。

[X] Chrome - develop for the web (Cannot find chrome executable at "D:\Portable\Chromium\chrome-win\chrome.exe")
    ! "D:\Portable\Chromium\chrome-win\chrome.exe" is not executable.

有人知道吗?

【问题讨论】:

我假设您在 Windows 10 上运行。您可以尝试在运行此应用程序的命令提示符下运行 refreshenv 并进行测试。我假设您的路径中只有一个颤振安装。也可以尝试以管理员身份运行 IDE 或命令提示符。 @AbhilashChandran 我在命令提示符下尝试了refreshenv 并尝试以管理员身份运行shell,但结果相同:! "D:\Portable\Chromium\chrome-win\chrome.exe" is not executable. 当我执行D:\Portable\Chromium\chrome-win\chrome.exe 时,它会执行chrome。 您可以尝试将路径设置为直到D:\Portable\Chromium\chrome-win 没有chrome.exe。不确定这是否会有所帮助。还要确保这个路径字符串周围没有" " 我确定您必须重新启动 IDE,但只是为了确定.. :D 有时在 android studio 中您需要使缓存无效并重新启动。请务必发布flutter doctor 的完整报告,然后颤振维护者可以快速指出它是否是一个已知问题.. @AbhilashChandran 问题出在路径字符串周围的" ",谢谢!现在它起作用了。我建议您写此评论作为标记为问题已解决的答案。 【参考方案1】:

您是否尝试切换到主频道?或者运行“flutter create”。在项目根目录中?

如果不行,你可以试试:

flutter channel master
flutter upgrade
flutter config --enable-web
cd <into project directory>
flutter create .
flutter run -d chrome

【讨论】:

结果是 No devices found name or id matching 'chrome' 像魅力一样工作。谢谢。 这对我有用。我之前在stable 频道,并没有将 chrome 列为设备。为什么切换到master 频道可以解决这个问题? 这是因为 Windows 支持处于 pre-alpha (master) 而目前处于 alpha (dev)。 More info on channels如果你有兴趣。【参考方案2】:

这个解决方案对我有用:

$ flutter upgrade
$ flutter config --enable-web
$ flutter run -d chrome

如果 chrome 在 Flutter device selection 中不可用,请尝试重新启动 IDE。

【讨论】:

【参考方案3】:

正如 OP 所建议的,我从上面列出了我的 cmets,作为答案。我相信便携式 chrome 的使用是新的 w.r.t flutter,并且怀疑这可能对其他人有用,而不是删除问题。

您可以在 Windows 10 中尝试的一些选项是。

    在命令提示符下运行refreshenv 命令。 确保在您的路径中正确安装了 Flutter。 删除路径字符串周围的双引号" "

在这种情况下,第三个选项解决了问题。?

【讨论】:

【参考方案4】:

为用户和系统创建系统环境变量 变量名:铬 变量路径:path_to_chrome

【讨论】:

【参考方案5】:

原来这可以通过切换频道来解决

flutter channel
flutter channel beta

【讨论】:

以上是关于Flutter 在 Windows 10 上找不到名称或 ID 与“chrome”匹配的设备的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 在启动时崩溃:在路径 DexPathList 上找不到类 .MainActivity

MissingPluginException(在通道 flutter_email_sender 上找不到方法发送的实现)

在 Flutter 上找不到捆绑的 Java 版本

在 Windows 10 上找不到 SDK“Microsoft.VCLibs,版本 = 14.0”

我在 Windows 10 上找不到 /rootfs

在 Windows10 上使用 VirtualBox 的 Vagrant:在您的 PATH 上找不到“Rsync”