Android Studio erkennt physisches Gerät als Null?

89

Ich habe ein Android Application for Android(SDK min Version 14) entwickelt und ich habe es normal mit Tablets wie getestet Samsung Galaxy 2 and Nexus 7. Als ich jedoch versuchte, die Anwendung auszuführen (durch Klicken auf Ausführen AndroidStudio), erkennt AS die Tablet-Informationen nicht, die in der folgenden Abbildung dargestellt sind.

Gerät ist Null

Das Interessante ist, dass AS, wie im obigen Bild gezeigt, das Gerät auch als SDK erkennt, API 1wenn es sich um eine Android-Version handelt. 4.2.2 Das Tablet ist USB debuggingin den Entwickleroptionen bereits auf " " eingestellt. Ich habe versucht, das Tablet neu zu starten und AS neu zu starten , aber trotzdem bekomme ich das gleiche Problem (alles ist in Ordnung mit nexus 7 and Samsung Galaxy 2).

Das Tablet / Gerät, an dem ich arbeite, ist ein "VeryKool" T742

Environment information:
 OS: ubuntu
 AndroidStudio version: 0.8.6

 Tablet Android version:4.2.2
 Tablet Kernel version: 3.4.5
 App min SDK: 14
Jorch914
quelle
3
Ich hatte dieses Problem schon einmal. Es ist nur so, dass das Tablet von Ihrem PC nicht als solches erkannt wird und Sie Ihrem Benutzer daher nicht die Erlaubnis geben, es zu verwenden. Sie können den ADB-Dienst als Root (auf Ihrem PC) starten oder diesen Gerätetyp einfach irgendwo in Ihren udev-Rouls hinzufügen. Dann sollte es ohne den Kameratrick funktionieren. Wenn Sie in den Kameramodus wechseln, stellt sich Ihr Gerät einfach mit einer anderen Geräte- / Produkt-ID vor, die Ihrem System bekannt ist.
user3387542
@ user3387542 aber wie füge ich diesen Gerätetyp zu meinem udev hinzu?
AbdelHady
Beeindruckend. Vielen Dank. Ich habe Stunden damit verschwendet. und die endgültige Lösung für mich ist, Android Studio als / root-Benutzer zu starten. wie ich Centos OS benutze
Abdul Mohsin

Antworten:

161

Ok Also ich habe endlich das Problem gefunden, anscheinend muss man auf diesem Gerät eine Verbindung als Kamera herstellen (auch nachdem das USB-Debugging bereits aktiviert ist)

Geben Sie hier die Bildbeschreibung ein

Auch dieser Link beschreibt den Einrichtungsprozess

Jorch914
quelle
3
Ich habe tagelang nach diesem Problem gesucht und die Lösung besteht darin, es als "Kamera" anzuschließen. Das ist so seltsam, aber es funktioniert! Danke fürs Teilen
AbdelHady
In meinem Fall wurde MTP ausgewählt und ich musste zu PTP und dann zurück zu MTP wechseln, damit es funktioniert.
rjlopes
hat auch an meinem gearbeitet! Ich weiß nicht, was der Grund ist!
Bmnepali
In meinem Fall musste ich diesen Befehl auch auf dem Terminal ausführenadb devices
Zohab Ali
57

Ich habe diesen Fehler einige Male gesehen, wenn adb nicht mit den richtigen Berechtigungen verbunden wurde.

Versuchen Sie es auf dem Terminal

~/Android/Sdk/platform-tools> ./adb devices    

wenn es zurückkommt

<deviceIdentifier> no permissions

dann müssen Sie adb mit der richtigen Dauerwelle neu starten

~/Android/Sdk/platform-tools$> ./adb kill-server
~/Android/Sdk/platform-tools$> sudo ./adb devices

Wenn das funktioniert hat, werden Sie bekommen

List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
<deviceIdentifier>  device

Danach gibt es in Android Studio keine Probleme mit der Auflösung der Sdk-Version mehr.

JoeKir
quelle
1
Auf diese Weise sehe ich meinen Gerätenamen (ohne Null) nur für eine Sekunde. Es wird wieder Null angezeigt
Shruti
1
Dies ist die richtigste Antwort, da das Google Pixel-Gerät auch nach Änderung des Verbindungstyps null ist.
Kostyabakay
Genial! Danke dir.
Kirill Starostin
22

Führen Sie einfach diesen Befehl aus, nachdem Sie Ihr Gerät mit Ihrem Ubuntu-System verbunden haben:

adb devices

Das funktioniert bei mir.

Hinweis: Stellen Sie sicher, dass Sie die Dateiübertragungsoption in Ihrem Telefon ausgewählt haben.

Rashil Shah
quelle
stackoverflow.com/a/34598874/9022007 Versuchen Sie dies auch, wenn ADB-Geräte für Sie nicht funktionieren
Rashil Shah
Es funktioniert für mich. 1) ADB-Geräte 2) Einstellungen -> Angeschlossene Geräte -> USB -> Wechseln Sie zu 'Übertragen von Dateien'
amitabha2715
17

Unter Ubuntu, mit meinem Pixel XL auf 8.0, musste ich dies tun, während ich an einen Computer angeschlossen war:

Einstellungen -> Angeschlossene Geräte -> USB -> Wechseln Sie zu 'Dateien übertragen'

RESTfulGeoffrey
quelle
Einstellungen von was?
Arekolek
Telefoneinstellungen
RESTfulGeoffrey
Ich stellte fest, dass mein Pixel nach einer Weile der Verbindung auf Null geschaltet wurde. Ich habe das Gerät immer wieder neu gestartet, aber das Gleiche würde passieren. Dies behebt es manchmal, aber nur vorübergehend, seltsam ...
hmac
Es funktioniert für mich. 1) ADB-Geräte 2) Einstellungen -> Angeschlossene Geräte -> USB -> Wechseln zu 'Dateien übertragen'
amitabha2715
Dies funktioniert immer noch im Jahr 2019 auf Pixel 3. (Ich bin hierher gekommen, um nach einer dauerhaften Lösung zu suchen, aber immer noch nicht gefunden, diese Aktion funktioniert immer noch)
Wesely
12

Habe das gleiche Problem mit meinem Nexus 5 / 5X / Pixel 2 XL unter Ubuntu 18.04.

Eine dauerhafte Lösung besteht darin, eine udev-Regel hinzuzufügen, damit Sie immer auf das Gerät zugreifen können.

  • Finden Sie Ihr Gerät mit dem Befehl lsusb. Dies gibt zB für mein Pixel 2 XL folgendes aus:

    Bus 001 Device 003: ID 18d1:4ee7 Google Inc.
    
    # This means: BUS=001, DEVICE=003, VENDOR=18d1, PRODUCT=4ee7
    
  • Überprüfen Sie nun die Berechtigungen. Ersetzen Sie 001 und 003 durch Ihre Parameter:

    ls -l /dev/bus/usb/001/008
    
    # Output: crw-rw-r-T 1 root root 189, 8 Nov 10 18:34 /dev/bus/usb/001/003
    # Unless you are root, you are missing the permissions to access the device
    
  • Um dies zu beheben, erstellen Sie eine udev-Regeldatei sudo nano /etc/udev/rules.d/51-android.rulesmit folgendem Inhalt:

    SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee7", MODE="0660", 
    GROUP="plugdev", SYMLINK+="android%n"
    
    # You need to replace "18d1" and "4ee7" with your output of `lsusb` above
    
  • Trennen Sie das Gerät vom Stromnetz und schließen Sie es wieder an. Es sollte jetzt immer erkannt werden. Wenn nicht, starten Sie den ADB-Server ein letztes Mal mit neu adb kill-server.

Quelle: http://www.janosgyerik.com/adding-udev-rules-for-usb-debugging-android-devices/

hb0
quelle
6

Bei der Verwendung von Android Studio unter Ubuntu ist das gleiche Problem aufgetreten. Anscheinend bestand das Update für mich darin, den USB-Verbindungsmodus für das Gerät als MTP einzustellen .

jayeshsolanki93
quelle
5

Überprüfen Sie zuerst die ADB-Version: Wenn es Ausgabe wie gibt

Android Debug Bridge version 1.0.32

Starten Sie dann einfach den Daemon neu.

sudo adb kill-server
sudo adb start-server

Andernfalls installieren Sie zuerst adb und starten Sie den Daemon neu. Arbeitete für mich in Ubuntu 16.04.3

user6299305
quelle
5

Vor kurzem hatte ich das gleiche Problem mit Vivo- und MI-Telefonen. Ich habe alles versucht, was in diesem Thread beschrieben ist. Ich habe versucht, eine Verbindung als MTP, PTP herzustellen. Aber nichts hat funktioniert.

Nach vielen Wiederholungsversuchen habe ich eine Lösung für meinen Fall gefunden und kann möglicherweise auch anderen helfen.

  1. Öffnen Sie das Terminalfenster in Android Studio
  2. Beenden Sie den ADB-Server mit dem folgenden Befehl: adb kill-server
  3. Starten Sie den ADB-Server mit dem folgenden Befehl neu: adb start-server

Es hat mein Problem gelöst.

Dhaval
quelle
danke rettete meinen Tag .. es zeigt immer 24213213 [null], aber nach Ihrer Manipulation zeigt es jetzt Samsung Galaxy ...
waza123
4

Das Deaktivieren und erneute Aktivieren des Debuggens, während das Gerät verbunden war, hat den Trick für mich getan.

Drazen Bjelovuk
quelle
4

Ich hatte das gleiche Problem.

Ich habe es gelöst, indem ich die Einstellungen meines Android-Geräts geöffnet und dann "Ausschalten" und dann "Einschalten" für das USB-Debugging ausgewählt habe.

CenyGG
quelle
4

Ich hatte das gleiche Problem. Ich habe das dadurch gelöst

  1. Android -> SDk -> Plattform-Tool

2.Öffnen Sie das Terminal für (Ubuntu-Benutzer) oder öffnen Sie cmd (Fensterbenutzer).

3.Type Befehl "sudo adb kill-server"

4.Gehen Sie zu Android Studio und schließen Sie das Gerät wieder an.

DEVENDRA SINGH
quelle
1

Auf Ubuntu funktionierte die Installation von ADB für mich, ich denke, es gab ein Problem mit Standard Android Studio One.

Verwenden Sie im Terminal den Befehl

sudo apt install adb 
Manohar Reddy
quelle
0

Unter Linux (in meinem Fall Centos 6) kann der Grund manchmal sein, dass Sie Android Studio nicht als Root-Benutzer gestartet haben. Bitte starten Sie Android Studio als Root-Benutzer neu und versuchen Sie es!

Abdul Mohsin
quelle
2
Das ist eine schreckliche Idee. Starten Sie niemals die Userland-Anwendung als Root!
Agilob
0

Wählen Sie für Ubuntu-Computer die Übertragungsoption und das Gerät wird in Android Studio sowie zum Debuggen erkannt. Im Allgemeinen befindet sich das Gerät im Ladezustand für Windows, aber für Ubuntu funktioniert dies so.

Auch wenn ein Gerät oft nicht erkannt wird, machen Sie dasselbe noch einmal.

Prayag
quelle
0

Benötigt MTP-Modus, aber es kommt nicht unter der USB-Seite. In der Speichereinstellung in der Menüleiste können Sie den PC-Verbindungstyp auf ... MTP einstellen.

Mark Deacon
quelle
0

Überprüfen Sie die laufenden Prozesse, ich hatte mehrere ADB-Prozesse ausgeführt und ich denke, das hat die Dinge für mich vermasselt. Töte sie alle und starte Studio neu. HTC Sync Manager, GenyMotion usw. und möglicherweise, wenn mehrere Android Studio-Fenster geöffnet sind, können mehrere widersprüchliche ADB-Prozesse auftreten.

hmac
quelle
0

Besonders unter Ubuntu oder einer anderen Plattform. Bitte und Bitte überprüfen Sie Ihre ADB-Version. Ich kann das nicht genug betonen. Stellen Sie sicher, dass es aktualisiert wird oder die neueste Version, insbesondere wenn die obigen Antworten nicht funktionieren und dieser Link auch nicht funktioniert.

Nachdem ich meinen Plattform-Tools-Ordner unter aktualisiert habe

PATH_TO/Android/Sdk/platform-tools

welches auch das enthält adbes hat funktioniert. Ich rannte
adb devices

zuerst würde es dann nicht autorisiert zeigen

Sie ziehen den Stecker aus der Steckdose und stecken ihn wieder ein. Dann würde Ihr Telefon um Erlaubnis bitten, bevor das System Ihr Gerät lesen würde.

aufleuchten
quelle
0

In meinem Fall war es für mich die Aufgabe, einfach auf mein Telefon zu schauen und das Kontrollkästchen "Popup" zu aktivieren, um das USB-Debugging zu ermöglichen.

Löwe
quelle
-1

Gehen Sie zum Terminal in Android Studio und führen Sie "ADB-Geräte" aus. Es werden die angeschlossenen Geräte angezeigt. Führen Sie dann die App aus und das Gerät sollte angezeigt werden.

VIVEK CHOUDHARY
quelle