Ich versuche eine Beispielanwendung mit Flatter (Neuinstallation) zu erstellen. Android Studio ist ebenfalls installiert (Neuinstallation).
Hier ist die Ausgabe von flutter run
flutter run
No connected devices.
die Ausgabe von 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.
Gibt es eine Lösung?
Flutter unterstützt sowohl iOS- als auch Android-Geräte/Simulatoren.
Führen Sie im Terminal den Befehl
flutter devices
aus, um sicherzustellen, dass Flutter Ihr angeschlossenes Android-Gerät erkennt.
Hier finden Sie ein Referenzdokument, wie Sie das Gerät/den Simulator für die Ausführung Ihrer Anwendung einrichten können.
Um sich darauf vorzubereiten, Ihre Flutter-App auf einem Android-Gerät auszuführen und zu testen, benötigen Sie ein Android-Gerät, auf dem Android 4.1 (API Level 16) oder höher ausgeführt wird.
Standardmäßig verwendet Flutter die Version des Android SDK, auf der Ihr Adb-Tool basiert. Wenn Sie möchten, dass Flutter eine andere Installation des Android SDK verwendet, müssen Sie die Umgebungsvariable Android_HOME auf dieses Installationsverzeichnis setzen.
Führen Sie die folgenden Schritte aus, um die Ausführung und den Test Ihrer Flutter-App auf dem Android-Emulator vorzubereiten:
Stellen Sie sicher, dass die AVD-Konfiguration korrekt ist, und wählen Sie Fertig stellen.
Einzelheiten zu den obigen Schritten finden Sie unter Verwalten von AVDs.
Klicken Sie im Android Virtual Device Manager in der Symbolleiste auf Ausführen. Der Emulator wird gestartet und zeigt die Standardoberfläche für die ausgewählte Betriebssystemversion und das Gerät an.
-
Hier können Sie Simulatoren/Geräte einfacher öffnen und anschließen.
Android Studio zeigt eine Liste der (in Ihrem System installierten) Emulatoren/Simulatoren oder der an Ihr System angeschlossenen Geräte an. Wählen Sie einfach ein Gerät aus, das Sie öffnen möchten, und führen Sie das Projekt aus.
Ich habe das AVD-Problem mit dem Flattern mit der Flatterkonsole gelöst.
Schritt 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
Um einen Emulator auszuführen, führen Sie flutter emulators --launch <emulator id>
aus.
Schritt 2:
C: \ Users \ valer> flutter emulators --launch Pixel_API_28
Ich habe das gleiche Problem wie Sie. Es stellt sich heraus, dass Ihr Gerät nicht mit Ihrem Computer verbunden ist.
Hinweis:
Wenn dies immer noch nicht funktioniert, versuchen Sie es mit dem folgenden Befehl abzufeuern, wo Sie ausführlichere Informationen und Details erhalten können:
flutter run --verbose
Wenn Sie haben
Und immer noch bekommst du "Kein Gerät verbunden", dann denke ich, du solltest den ADB-Treiber installieren .. Es hat für mich funktioniert !! Zum Herunterladen hier klicken
Es muss mindestens ein Gerät/Simulator für die Ausführung von Flutter - Anwendungen angeschlossen sein.
Stellen Sie außerdem sicher, dass das USB-Debugging in den Entwicklereinstellungen aktiviert ist.
Das war meine Lösung. Hoffe, meine Verwirrung kann auch jemand anderem helfen:
Meine " Entwickleroptionen " warAM,
aber das " USB Debbugging " warAUS.
Also habe ich das USB Debbugging eingeschaltet und das Problem wurde gelöst.
Mit Flutter habe ich dasselbe Problem. Aber ich habe einen anderen Weg gefunden, d. H.
Führen Sie den Befehl "Flatterdoktor" aus und prüfen Sie, ob Ihr Emulator unter "Connected Devices" angezeigt wird. Erfolg beim Flatterdoktorkommando
Gehen Sie jetzt über die Flutter-Konsole zu Ihrem Flutter-Projektpfad, z. für mich ist es D:\FlutterWorkspace\Flutter_demo
Führen Sie dann den Flatterlaufbefehl aus. z.B. Flatterlauf Warten Sie ein paar Sekunden, bis Ihre App im Android Emulator ausgeführt wird. App läuft
Ich verwende Linux, also hier kann der Schritt helfen. Öffnen Sie zunächst das Studio mit Root-Berechtigung (Fenster: Klicken Sie mit der rechten Maustaste auf das Programmsymbol> Wählen Sie Als Administrator ausführen, Linux: Sudo ./studio.sh
im Terminal).
Emulator mit Hardware erstellen - GLES 2.0 in Hardwarebeschleunigungwie hier erwähnt . Offenes Terminal im Android Studio (Alt + F12)
Führen Sie den Befehl flutter devices
aus und sehen Sie die Listengeräte
[email protected]:~/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)
Endlich vom Terminal flutter run
ausführen
[email protected]:~/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".
Und überprüfen Sie den Flatter-SDK-Pfad in Ihrem Projekt. Konfigurieren Sie aus dieser Antwort
Ich habe dieselben Probleme, während ich mit lokaler Flatter-Engine debugging. Wenn Sie in diesem Fall die Umgebungsvariable FLUTTER_ENGINE
eingestellt haben, sollten Sie sie deaktivieren und Ihre IDE neu starten.
Für Fensterbenutzer
Umgebungsvariable für Flutter-SDK festlegen (...\flutter_windows_v0.2.8-beta.Zip\flutter\bin)
Weitere Informationen finden Sie hier http://www.developerlibs.com/2018/05/flutter-introduction-and-setup.html
Grundsätzlich ist ein Gerät erforderlich, das mit Ihrer Entwicklungsmaschine "verbunden" ist. Wenn Sie einen Simulator/Emulator verwenden, der auf dem Computer ausgeführt wird, sollte er automatisch als angeschlossenes Gerät erkannt werden. Eine andere Möglichkeit besteht darin, ein physisches Gerät anzuschließen, und der Einrichtungsprozess variiert für Android- und iOS-Geräte geringfügig.
wenn ich unter iOS mit einem Mac diesen Fehler erhalte, funktioniert das für mich:
open-a Simulatoren flattern laufen
Die eigentliche Antwort hat bei mir nicht funktioniert.
Aber Android_HOME
in dir ~/.bash_profile
einstellen und abmelden, dann einloggen, es funktioniert!
Dies kann ein Problem mit Android Studio sein, da diese Umgebungsvariable nicht für die geöffneten Projekte festgelegt wird.
Was ich tun musste:
flutter emulators
Es werden alle verfügbaren Emulatoren aufgelistet. Für iOS müssen Sie zuerst den Simulator öffnen.
flutter emulators --launch EMULATOR NAME
Dadurch wird der Emulator gestartet
Und um es zu bauen
flutter run -d "EMULATOR ID"
Keine der oben genannten Lösungen funktionierte für mich, aber ich konnte sie lösen, indem ich catch
ungültig machte und mein Android-Studio neu startete:
File > Invalidate Catches / Restart...
Eine Option, die ich bisher nicht erwähnt habe, ist (für mein Setup), dass die Developer Option 'Select USB Configuration' auf MTP (Media Transfer Protocol) eingestellt sein muss.
Für Fensterbenutzer,
Die Lösung für mich war das Ausführen von Android Studio als Administrator
Flutter benötigt ein Gerät, um die App zu starten. Hierfür gibt es zwei Möglichkeiten.
Ich würde Option 1 empfehlen, da sie nicht die Ressourcen Ihres Geräts beansprucht und schneller ist.
Option 1:
Entsperren Sie die Entwickleroptionen auf Ihrem Telefon, rufen Sie die Entwicklereinstellung auf, aktivieren Sie das USB-Debugging und verbinden Sie Ihr Telefon mit Ihrem Computer. Führen Sie nun flutter run
aus und es wird funktionieren.
Option 2:
Öffnen Sie Android Studio, gehen Sie zu AVD Manager, fügen Sie ein virtuelles Gerät hinzu, falls Sie dies noch nicht getan haben, und führen Sie das virtuelle Gerät aus. Führen Sie nun flutter run
erneut aus und es sollte funktionieren.
Beachten Sie, dass dieser Weg mit jedem virtuellen Gerät funktioniert und nicht nur mit virtuellen Geräten aus Android Studio.
Ich habe das Problem behoben, nachdem ich "Android_HOME" in die Umgebungsvariablen geändert und sie auf den Speicherort Ihres Android-SDK festgelegt habe. In meinem Fall C:\Android\Sdk
Keiner der Vorschläge hat funktioniert, bis ich lief
flutter config --Android-sdk Android_SDK_PATH
Nun, diese Frage wurde beantwortet, ich wollte nur hinzufügen, dass Sie verbundene Geräte sehen können, wenn Sie den Simulator manuell auf MAC und Android Emulator von AVD Manager starten.
Ich hatte einen Emulator am Laufen, aber der VSC-Ide konnte keine Verbindung dazu herstellen. Also habe ich den Entwicklermodus im Emulator und die Debugging-Optionen ebenfalls aktiviert. Voila, es hat funktioniert!
Gehen Sie zu Datei-> Projektstruktur-> Projekt-SDK (wählen Sie den SDK-Pfad im Android-SDK aus) -> OK Stellen Sie sicher, dass Ihr Gerät mit dem PC verbunden ist. Öffnen Sie GitBash und geben Sie Folgendes ein: Flattergeräte. Dann starte deine Flatter-App. Es wird funktionieren.
Manchmal liegt das Problem bei der Geräteverbindung und dem Treiber
wenn Sie die Developer Option und das USB-Debugging bereits aktiviert haben und Ihr Gerät immer noch nicht anschließen kann
sie müssen dieses versuchen, da es offiziell von GOOGLE stammt.
Installieren Sie OEM-USB-Treiber:
Versuchen Sie, Android Studio als Administrator auszuführen, wenn sich Ihr Flatter-SDK-Speicherort im Laufwerk C befindet
Für mich war es so
hinzufügen von "Android_HOME" zu den Umgebungsvariablen und Einstellung auf D:\dev\Android\(für mich)
hinzufügen von "D:\dev\Android\platform-tools" (für mich) zu Pfad Ich habe vorher Flattern
Ok, Ok, Ok Starten Sie das Android-Studio neu
Wenn der Emulator ausgeführt wird und von der flutter
und dem adb devices
nicht erkannt wird, versuchen Sie, ihn mit dem folgenden Befehl manuell zu verbinden
abd connect 127.0.0.1:62001
Wenn die Verbindung nicht hergestellt werden kann, versuchen Sie es erneut. Die folgende Meldung sollte erscheinen
verbunden mit 127.0.0.1:62001
Versuchen Sie dann flutter doctor
oder adb devices
, um sicherzustellen, dass die Verbindung erfolgreich hergestellt wurde.
Ich habe festgestellt, dass mein Antivirus (Avast) die Datei adb.exe unter Quarantäne gestellt hat. Ich ging zu Avast -> Schutz -> Virenschutz. Die Datei adb.exe wurde aus der Liste entfernt.
Fügte dann die Variable Android_home hinzu und fügte sie der Pfadvariablen hinzu. Mein Computer wurde neu gestartet und Android Studio hat das Gerät/den Emulator aufgenommen.
In meinem Fall hat flutter devices
mein Gerät korrekt angezeigt und der Flatter-Lauf hat wie erwartet funktioniert. Das Gerät wird jedoch nicht in Android Studio angezeigt.
Hier ist meine Aufregung:
in meinem .bash_profile
ist das Android SDK folgendermaßen konfiguriert:
export Android_SDK_ROOT="~/Library/Android/sdk"
das Flatter-Plugin kann den ~
anscheinend nicht erkennen, also habe ich ihn folgendermaßen geändert:
export Android_SDK_ROOT="/Users/charliema/Library/Android/sdk"
öffnen Sie das Android Studio erneut, es hat funktioniert.