可以使用颤振在 VS Code 和 Android Studio 中启动但无法连接到模拟器

Posted

技术标签:

【中文标题】可以使用颤振在 VS Code 和 Android Studio 中启动但无法连接到模拟器【英文标题】:Can launch, but not connect, to emulator in VS Code and Android Studio using flutter 【发布时间】:2019-08-05 21:38:03 【问题描述】:

短版,我可以从 VS Code 和 android Studio 启动一个 android 模拟器,但是当我启动时,flutter 不会连接到它。

我正在新笔记本电脑上安装全新的 Android Studio 和 VS Code,以及 Flutter 和 dart。在我写这篇文章的时候已经安装了所有这些的最新版本。

我必须在 Windows 中禁用 Hyper-V(但在 Bios 中保持启用)才能安装 Intel 的 HAXM,但它已安装。

我下载了一个包含 Google Play 的 Android 9 'Pie' AVD 图像,并用它创建了一个 Nexus 5X 设备。

我可以从 AVD 管理器很好地启动模拟设备,但 VS Code 和 Android Studio 都不会连接到它。我已经删除了设备并重新创建了它,多次擦除了它的数据,重启了很多笔记本电脑,但什么也没做。

从 VS Code 和 AS 中启动设备会按预期工作,但两者都不会连接到设备。在 VS Code 中,我收到“模拟器未在 60 秒内连接”消息,即使模拟器在我要求时立即启动。

我已经多次运行adb kill-serverstart-server,没有区别。

当我在运行模拟器的情况下运行adb devices 时,我得到emulator-5554 unauthorized,所以也许某处发生了权限问题?

我愿意接受建议。谢谢。

[Edit] 随后的测试表明,如果我使用不带 google play 的 Android 9 AVD 和带 Google Play 的 Android 8.1 AVD,我可以连接到 VS Code 和 Android Studio 中的模拟器没有。所以是 Android 9 和 Google Play 的 AVD 让人胃痛,不知道为什么?

【问题讨论】:

当我第一次通过 VS Code 启动模拟器时,我总是收到 60 秒的消息。我所做的是关闭模拟器并使用 VS Code 重新启动它,它总是第二次连接而不会失败。 【参考方案1】:

听起来 ADB 无权连接到模拟器。尝试进入设备上的开发者设置并撤销USB调试授权,然后重新启动ADB服务器(adb kill-server && adb start-server)并查看设备是否弹出要求您批准来自PC的连接(您可能需要重新启动它) .

【讨论】:

嗯。我按照你的建议做了,当手机启动时,我看到屏幕上的对话框闪烁,但在我说“好的”之前它就消失了。除非我再次重新启动,否则我无法恢复它,它不会出现在任何最近的项目列表中,就像您是否最小化了其他应用程序(例如 Chrome)一样。奇怪... 奇怪 - 我认为它没有被自动接受,因为它是一个模拟器?如果您运行adb devices,它是否仍显示为未经授权? 是的,它仍然显示为未经授权。真的很奇怪,这个对话框显示出来的速度有多快,然后就沉到了底部,再也看不到了。 恐怕没有别的想法了;这似乎在 Flutter 和 VS Code 之外:/

以上是关于可以使用颤振在 VS Code 和 Android Studio 中启动但无法连接到模拟器的主要内容,如果未能解决你的问题,请参考以下文章

无法在 VS Code 中调试颤振飞镖代码,未验证断点错误

如何在 VS Code 中调试颤振 build_runner 构建?

如何在 VS 代码中设置颤振 android 模拟器

如何在没有 Android Studio 的情况下使用模拟器在 VS 代码中安装颤振?

Flutter 无法在 VS Code 上构建示例 iOS 应用程序

颤振导入'package:flutter_svg/flutter_svg.dart';不适用于 VS 代码和 Android 工作室