我试图用Flutter创建一个示例应用程序(新安装)。还安装了Android Studio(新安装)。

这是颤振运行的输出

flutter run
No connected devices.

颤振医生输出:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.1.5, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[✓] Android Studio (version 3.0)
[!] VS Code (version 1.20.1)
[!] Connected devices
! No devices available

! Doctor found issues in 2 categories.

这个问题有解决办法吗?


当前回答

只是我的案子。在这些答案中我还没有找到这个解。

系统

Android 10设备。

Mac与macOS v10.14.6 (Mojave, 18G4032)。

我的Android设备上启用了开发人员选项和USB调试。

Flutter SDK已安装在我的Mac上。

问题

当Android设备用USB线连接到我的Mac时,flutter devices命令仍然显示:没有可用的设备。

解决方案

幸运的是,我的Android设备弹出了一个弹出窗口,建议我在Mac上安装Android File Transfer。

在我的Mac上安装了Android File Transfer后,flutter devices命令显示我的Android设备已连接。

其他回答

我在调试本地颤振引擎时遇到了同样的问题。在这种情况下,如果已经设置了环境变量FLUTTER_ENGINE,则应该取消设置并重新启动IDE。

我用Flutter控制台解决了AVD问题。

步骤1:

C: \ Users \ valer> flutter emulators
6 available emulators:

3.2_QVGA_ADP2_API_22 _-_ Lollipop • 3.2in QVGA (ADP2) • Generic • 3.2 QVGA (ADP2) API 22 - Lollipop
Android_ARMv7a
Android_Accelerated_x86
Nexus S API Google Nexus S API 23
Nexus_S_API_25_1080x1920_Nougart_7.1.1_ • pixel • Google • Nexus S API 25 1080x1920 (Nougart 7.1.1)
Pixel_API_28 • pixel • Google • Pixel API 28

要运行模拟器,请运行flutter模拟器——launch <模拟器id>。

步骤2:

C: \ Users \ valer> flutter emulators --launch Pixel_API_28

Flutter支持iOS和Android设备/模拟器。

在终端中,运行flutter devices命令,验证flutter是否识别您连接的Android设备。

下面是关于如何设置设备/模拟器来运行应用程序的参考文档。

For, Android(在Mac系统上)

设置你的Android设备

要准备在Android设备上运行和测试您的Flutter应用程序,您需要运行Android 4.1 (API级别16)或更高版本的Android设备。

在设备上启用开发人员选项和USB调试。详细的说明可以在Android文档中找到。 用USB线把你的手机插到电脑上。如果您的设备上出现提示,请授权计算机访问您的设备。 在终端中,运行flutter devices命令,验证flutter是否识别您连接的Android设备。 通过运行颤振运行启动应用程序。

默认情况下,Flutter使用ADB工具所在的Android SDK版本。如果您希望Flutter使用不同的Android SDK安装,则必须将ANDROID_HOME环境变量设置为该安装目录。

设置Android模拟器

要准备在Android模拟器上运行和测试Flutter应用程序,请执行以下步骤:

在您的机器上启用虚拟机加速。 打开Android Studio→菜单工具→AVD管理器,选择创建虚拟设备。 选择一个设备定义并选择Next。 为要模拟的Android版本选择一个或多个系统映像,然后选择Next。建议使用x86或x86_64镜像。 在“仿真性能”下,选择“硬件- GLES 2.0”以启用硬件加速。 确认AVD配置正确后,选择 完成。

以上步骤请参见管理avd。

在Android虚拟设备管理器中,单击工具栏中的“运行”。模拟器启动并显示所选OS版本和设备的默认画布。 通过运行颤振运行启动应用程序。连接的设备名称是为<platform>构建的Android SDK,其中platform是芯片家族,例如x86。

这是另一个文档,如果你使用(微软)Windows系统:开始:安装在Windows上

使用Android Studio打开并连接设备:

下面是打开和连接模拟器/设备的一种更简单的方法。

Android Studio显示了模拟器/模拟器(安装在您的系统中)或设备(连接到您的系统)的列表。只需从列表中选择要打开的设备,然后运行项目。

有时,您拥有完美的一切,但设备不再被ADB授权。在这种情况下,您有ADB,但它不会在连接的设备中显示。

修复此问题的步骤

1. 检查是否授权: 打开terminal/cmd/PowerShell,写入adb设备。它将显示所有连接到PC的设备。

<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d        unauthorized

2. 取消手机上的USB调试

如果设备显示为未授权,请转到手机上的开发人员选项,然后单击“撤销USB调试授权”(在Android 4.1 (Jelly Bean)和三星Galaxy S III上测试)。

3.重启ADB服务器:

adb kill-server
adb start-server

4. 重新连接设备后,重新执行以下命令

现在它应该显示已授权。

5. 准备好了。

现在,打开你的编辑器,Android Studio或Visual Studio Code,检查你的设备是否显示在连接的设备中。

您可以简单地使用flutter doctor命令进行检查。

我发现我的杀毒软件(Avast)隔离了adb.exe文件。我去了Avast ->保护->病毒箱。从列表中删除adb.exe文件。

然后将Android_home变量+添加到PATH变量中。我重新启动了我的机器,Android Studio恢复了设备/模拟器。