颤动:没有连接的设备

问题描述 投票:74回答:32

我正在尝试用flutter创建一个示例应用程序(全新安装)也安装了android studio(全新安装)

这是flutter run的输出

flutter run  
No connected devices.

flutter doctor的输出

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 android-studio android-emulator ios-simulator flutter
32个回答
68
投票

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

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

这是参考文档,如何设置设备/模拟器来运行您的应用程序。

对于,Android (on mac system)

Set up your Android device

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

  1. 在您的设备上启用开发人员选项和USB调试。 Android文档中提供了详细说明。
  2. 使用USB线将手机插入计算机。如果您的设备出现提示,请授权您的计算机访问您的设备。
  3. 在终端中,运行flutter devices命令以验证Flutter是否识别您连接的Android设备。
  4. 通过运行flutter run启动您的应用程序。

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

Set up the Android emulator

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

  1. 在计算机上启用VM加速。
  2. 启动Android Studio>工具> Android> AVD Manager,然后选择创建虚拟设备。
  3. 选择设备定义,然后选择下一步。
  4. 为要模拟的Android版本选择一个或多个系统映像,然后选择“下一步”。建议使用x86或x86_64图像。
  5. 在“仿真性能”下,选择“硬件 - GLES 2.0”以启用硬件加速。
  6. 验证AVD配置是否正确,然后选择“完成”。 有关上述步骤的详细信息,请参阅管理AVD。
  7. 在Android Virtual Device Manager中,单击工具栏中的“运行”。模拟器将启动并显示所选操作系统版本和设备的默认画布。
  8. 通过运行flutter run启动您的应用程序。连接的设备名称是为其构建的Android SDK,其中platform是芯片系列,例如x86。

-

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

这是打开和连接模拟器/设备的更简单方法。

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

enter image description here


2
投票

我和Flutter面临同样的问题。但我找到了另一种工作方式,即

  1. 首先运行Android模拟器
  2. 然后转到您的Flutter控制台
  3. 运行命令flutter doctor并检查您的模拟器是否显示在连接的设备标签下,例如flutter doctor command success output
  4. 现在通过Flutter控制台移动到Flutter项目路径,例如对我来说是D:\ FlutterWorkspace \ flutter_demo
  5. 然后运行flutter run命令。例如flutter run稍等片刻,您将看到您的应用程序运行到Android模拟器中。 App is running

2
投票

我正在使用Linux,所以这里的步骤可以提供帮助。第一个具有root权限的打开工作室,(窗口:右键单击程序图标>选择Run as Administrator,linux:sudo ./studio.sh in terminal)

使用硬件创建模拟器 - 硬件加速as mentioned here中的GLES 2.0。在android studio中打开终端(Alt + F12)

运行命令flutter devices并查看列表设备

root@abc-OptiPlex-3050:~/flutter_workspace/my_app/my_app# flutter devices
   Woah! You appear to be trying to run flutter as root.
   We strongly recommend running the flutter tool without superuser privileges.

1 connected device:

Android SDK built for x86 • emulator-5554 • android-x86 • 
Android 8.1.0 (API 27)(emulator)

终于从终端flutter run运行

root@abc-OptiPlex-3050:~/flutter_workspace/my_app/my_app# flutter run
   Woah! You appear to be trying to run flutter as root.
   We strongly recommend running the flutter tool without superuser privileges.


Using hardware rendering with device Android SDK built for x86. 
If you get graphics artifacts, consider enabling software rendering 
with "--enable-software-rendering".
Launching lib/main.dart on Android SDK built for x86 in debug mode...
Initializing gradle...                                       0.7s
Resolving dependencies...                                    1.2s
Running 'gradlew assembleDebug'...                           1.5s
Built build/app/outputs/apk/debug/app-debug.apk.
I/FlutterActivityDelegate(25096): onResume setting current activity to this
Syncing files to device Android SDK built for x86...             
D/        (25096): HostConnection::get() New Host Connection established 
0xe8487780, tid 25116
D/EGL_emulation(25096): eglMakeCurrent: 0xe5b3d8a0: ver 2 0 (tinfo 0xe84832f0)

🔥  To hot reload changes while running, press "r". To hot restart (and 
rebuild state),press "R".An Observatory debugger and profiler on 
Android SDK built for x86 is available at: http://127.0.0.1:8100/
For a more detailed help message, press "h". To quit, press "q".

并检查项目中的flutter-sdk路径。配置from this answer


2
投票

实际答案对我没有用。

但是在你的ANDROID_HOME中设置~/.bash_profile并注销然后登录,让它工作!

这可能是Android Studio问题,因为它没有为打开的项目设置此环境变量。


2
投票

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


2
投票

我需要做什么:

flutter emulators

它将列出所有可用的模拟器。对于iOS,您需要先打开模拟器。

flutter emulators --launch EMULATOR NAME

这将启动模拟器

并建立它

flutter run -d "EMULATOR ID"

2
投票

在我跑之前,这些建议都没有奏效

flutter config --android-sdk ANDROID_SDK_PATH

1
投票

到目前为止我没有看到的一个选项是(对于我的设置)开发人员选项'选择USB配置'必须设置为MTP(媒体传输协议)。


1
投票

对于窗口用户,

我的解决方案是以管理员身份运行Android Studio


1
投票

以上解决方案都不适合我,但我能够通过使catch无效并重新启动我的android工作室来解决它:

File > Invalidate Catches / Restart...

1
投票

它基本上需要一个“连接”到您的开发机器的设备。如果您正在使用在机器上运行的模拟器/仿真器,则应自动将其识别为已连接的设备。另一种方法是连接物理设备,Android和iOS设备的设置过程略有不同。


17
投票

我使用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 emulators --launch <emulator id>

第2步:

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

1
投票

我将“ANDROID_HOME”更改为环境变量并将其设置为Android SDK的位置后解决了问题。在我的情况下C:\ Android \ Sdk


1
投票

转到文件 - >项目结构 - >项目SDK(在Android SDK中选择SDK路径) - >确定确保您的设备已连接到PC。打开GitBash并键入:flutter devices。然后运行你的颤动app.It将工作。


1
投票

我正在使用genymotion来测试应用程序我有同样的问题,当我按下运行按钮我面对这个错误最后两个小时.. enter image description here

如何修复此错误只是重新安装genymotion这个错误消失了。


0
投票

有时问题出在设备连接和驱动程序上

如果您已经打开了开发人员选项和USB调试但仍然无法连接您的设备

你必须尝试这个,因为它正式来自GOOGLE。

安装OEM USB驱动程序:

https://developer.android.com/studio/run/oem-usb


0
投票

对我来说是

  1. 将“ANDROID_HOME”添加到Environment变量并将其设置为D:\ dev \ android \(对我来说)
  2. 将“D:\ dev \ android \ platform-tools”(对我来说)添加到路径我之前就把它扑了起来
  3. 好的,好的,好的,重启Android工作室

0
投票

好吧,这个查询已经回答了,我只是想补充说,如果你在AVD管理器的MAC和Android模拟器上手动启动模拟器,你可以看到连接的设备。


0
投票

我有一个模拟器正在运行,但VSC ide无法连接到它。所以我在模拟器和调试选项中启用了开发人员模式。瞧,它奏效了!


0
投票

Flutter需要一个设备来运行应用程序。有两种选择。

  1. 在您的真实手机上运行该应用程序。
  2. 在计算机中的虚拟设备上运行该应用程序。

我建议选项1,因为它不使用您的设备资源,速度更快。

选项1:

解锁手机上的开发人员选项,转到开发人员设置并打开USB调试并将手机连接到计算机。现在运行flutter run,它会工作。

选项2:

打开android studio,转到AVD管理器,如果尚未添加虚拟设备并运行虚拟设备。现在再次运行flutter run它应该工作。

请注意,这种方式适用于任何虚拟设备,而不仅仅是android studio中的虚拟设备。


0
投票

在我的情况下,flutter devices正确显示我的设备,并且颤振运行按预期工作。但Android Studio中未显示该设备。

这是我的解决方案:

在我的.bash_profile中,Android SDK如下所示:

export ANDROID_SDK_ROOT="~/Library/Android/sdk"

似乎扑动的插件无法重新组合~,所以我改为这样:

export ANDROID_SDK_ROOT="/Users/charliema/Library/Android/sdk"

重新打开Android Studio,它有效。


0
投票

如果您的颤动sdk位置在C盘中,请尝试以管理员身份运行android studio


11
投票

我用Genymotion跑了我的,可能是Flutter最好的。

设置不那么痛苦

确保将ADB设置为

enter image description here

- 您的ANDROID SDK路径 -

我的是C:\ Users \ user \ AppData \ Local \ Android \ Sdk


0
投票

如果模拟器正在运行且flutteradb devices未检测到,则尝试使用以下命令手动连接它

abd connect 127.0.0.1:62001

如果无法连接,请重试。应出现以下消息

连接到127.0.0.1:62001

然后尝试flutter doctoradb devices以确保它已成功连接。


9
投票

我遇到了和你一样的问题。事实证明您的设备未与计算机连接。

注意:

  • 如果您使用的是XCode,如果您的计算机和设备都使用相同的WIFI,则无需将设备连接到计算机。
  • 对于在终端命令下运行的Android或iOS,如果您使用命令行来运行它,则必须确保它们通过电缆连接。共享相同的WIFI不起作用。确保您的设备真正连接。
  • 确保您在Android设备上允许USB调试。

如果这仍然不起作用,请尝试触发命令下方,您可以在其中获取更丰富的信息和详细信息:

flutter run --verbose

4
投票

如果你有

  • 下载了flutter SDK
  • 连接您的移动设备并启用移动设备上的开发人员选项并允许USB调试。

你仍然得到“没有设备连接”然后我认为你应该安装ADB驱动程序。它对我有用!! Click here to download


4
投票

这是我的解决方案。希望我的困惑也可以帮助别人:

我的“开发者选项”已开启,

但“USB调试”已关闭。

所以我打开USB调试,问题解决了。


4
投票
  • 未找到设备(在android studio中设置Flutter时)
  • 项目结构 - >在Project SDK中选择最新的ANDROID SDK

4
投票

对于窗口用户,

设置Flutter SDK的环境变量(... \ flutter_windows_v0.2.8-beta.zip \ flutter \ bin)

No device connect

有关更多信息,请在此处查看http://www.developerlibs.com/2018/05/flutter-introduction-and-setup.html

以下是上述页面中的信息:将Flutter添加到Windows环境变量Path

  1. 导航到Flutter SDK文件夹。
  2. 进入bin文件夹并复制目录路径(在您的情况下为C:\ Flutter \ bin)
  3. 转到“控制面板>用户帐户>用户帐户>更改我的环境变量”
  4. 在“用户变量”下,选择路径变量,然后单击编辑。
  5. 放C:\ Flutter \ bin并申请。

与Flutter Environment相同,如果它位于自定义位置,我们必须设置Android SDK路径。

  1. 导航到Android SDK文件夹。
  2. 复制目录路径(在您的情况下..AndroidStudioSDK \ sdk)
  3. 转到“控制面板>用户帐户>用户帐户>更改我的环境变量”
  4. 在“用户变量”下,选择路径变量,然后单击编辑。
  5. 将..AndroidStudioSDK \ sdk与ANDROID_HOME放在一起并申请。

提示:

如果您遇到以下问题,

1. [✗] Android工具链 - 为Android设备开发✗无法找到Android SDK。从https://developer.android.com/studio/index.html安装Android Studio首次启动时,它将帮助您安装Android SDK组件。 (或访问https://flutter.io/setup/#android-setup获取详细说明)。

如果已将Android SDK安装到自定义位置,请将$ ANDROID_HOME设置为该位置。

您可以使用以下命令解决它。

flutter config --android-sdk <android-sdk-location>flutter config --android-sdk "android-sdk-location"

  1. 错误:未知参数 - 许可证

您可以使用以下命令解决它。

flutter -v doctor --android-licenses

现在,选择要使用的模拟器,然后单击绿色箭头以运行项目。所以,这里已经设计了默认屏幕。


3
投票

应该至少连接一个设备/模拟器来运行Flutter应用程序。

还要确保在开发人员设置中启用了USB调试。

© www.soinside.com 2019 - 2024. All rights reserved.