我试图用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.
这个问题有解决办法吗?
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显示了模拟器/模拟器(安装在您的系统中)或设备(连接到您的系统)的列表。只需从列表中选择要打开的设备,然后运行项目。
对于Windows用户,
设置Flutter SDK的环境变量PATH(…\ Flutter _windows_v0.2.8-beta.zip\ Flutter \bin)
设备未连接
有关更多信息,您可以查看博客帖子Flutter -如何在Android Studio中安装Flutter
以下是来自上述页面的信息:
将Flutter添加到Windows环境变量PATH:
导航到Flutter SDK文件夹。
进入bin文件夹并复制目录路径(在您的示例中是C:\Flutter\bin)
进入“控制面板>用户帐户>用户帐户>更改我的环境变量”
在“User variables”下,选择PATH变量并单击Edit。
输入C:\Flutter\bin并应用。
与Flutter环境相同,如果Android SDK位于自定义位置,则必须设置Android SDK路径。
导航到Android SDK文件夹。
复制目录路径(在您的情况下..AndroidStudioSDK\sdk)
进入控制面板*→用户帐户→用户帐户→更改我的环境变量
在“User variables”下选择PATH变量并单击Edit。
进入. .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"
错误:未知参数——许可证
您可以使用以下命令解决该问题。
颤振医生——机器人执照
现在,选择要使用的模拟器并单击绿色箭头来运行项目。这里是已经设计好的默认屏幕。
Flutter需要一个设备来运行应用程序。为此有两种选择。
在你真正的手机上运行这个应用程序。
在您计算机中的虚拟设备上运行该应用程序。
我会推荐选项1,因为它不占用你的设备资源,而且速度更快。
选项1:
解锁手机上的开发人员选项,进入开发人员设置,打开USB调试,将手机连接到计算机。快跑,扑动,快跑,它会起作用的。
选项2:
打开Android Studio,进入AVD管理器,添加一个虚拟设备(如果你还没有这样做的话)并运行虚拟设备。现在运行扑动再运行一次应该能起作用。
注意,这种方法适用于任何虚拟设备,而不仅仅是Android Studio中的虚拟设备。
在我的例子中,颤振设备正确地显示了我的设备,颤振运行按预期工作。但Android Studio中并没有显示该设备。
以下是我的解决方案:
在我的.bash_profile中,Android SDK是这样配置的:
export ANDROID_SDK_ROOT="~/Library/Android/sdk"
似乎Flutter插件不能识别~,所以我把它改为这样:
export ANDROID_SDK_ROOT="/Users/charliema/Library/Android/sdk"
重新打开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命令进行检查。
我最近也遇到了同样的问题。我使用的是macOS和iOS模拟器。flutter devices命令显示“未检测到设备”。
然后我运行flutter doctor命令,它说我的Xcode安装不完整,
但这不是真的(我通过构建原生iOS应用程序来验证它,它可以运行
)好!
我没有重新安装/下载Xcode。我只是根据他们的建议运行了这两个命令:
sudo xcode-select --switch /Applications/Xcode.app/Contacts/Developer
sudo xcodebuild -runFirstLaunch
这解决了我的问题。这是最终的颤振医生命令输出。
步骤1:执行命令:flutter devices检查已连接设备
步骤2:如果在可用模拟器列表中没有任何连接的设备,请运行:flutter emulators
步骤3:要运行模拟器,请运行:flutter emulators——launch <模拟器id>
步骤4:如果没有可用的模拟器,运行:flutter emulators——create[——name xyz]
==>
步骤1:要查看模拟器列表,运行:emulator -list-avds
步骤2:现在要启动模拟器,运行:emulator -avd avd_name
==>
步骤1:打开-a模拟器
步骤2:扑动运行(在您的应用程序目录中)
只是我的案子。在这些答案中我还没有找到这个解。
系统
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设备已连接。
造成这个问题的主要原因有三种:
1. 您的计算机上没有安装ADB驱动程序。确保
你已经安装了正确的ADB驱动程序
在你的电脑上。
即使你的电脑能读取你的设备,你也不一定能
安装ADB驱动程序。我建议你搜索一下
从谷歌下载适合您Android设备的ADB驱动程序
或下载ADB软件包。如果您安装了ADB,但它没有
工作,尝试安装另一个ADB,因为通常不是所有的ADB
工作。
如果你在Windows上,当你安装了正确的ADB
驱动程序,也许os运行Windows Update来完成ADB
安装。
2. 您的设备没有启用调试器模式。这取决于Android的每个版本。一般来说,在安卓设备上,
你有
进入配置菜单,然后打开开发人员选项,激活调试器模式,开启OEM解锁和USB
调试器。同时确保你允许开发者在你的游戏上签字
设备
3.电缆不正确或其他物理问题。
有时这些问题是由数据传输电缆引起的。试着用其他的
电缆。