Ubuntu erkennt mein Android-Gerät nicht


34

Ich bin neu in Android. Ich habe gerade heruntergeladen und Android SDK installiert. Wenn ich die Anwendung von Eclipse aus starte, wird mein Gerät nicht erkannt. Ich habe gegoogelt und wurde mit dieser als meine Lösung gebracht, aber das hat auch nicht funktioniert.

Hier ist die 51-android.rules

SUBSYSTEMS=="usb", ATTR{idProduct}=="0bb4",  ATTR{idProduct}=="0c03", MODE="0666", GROUP="plugindev", OWNER="<username>"

Danach habe ich meinen Laptop neu gestartet und diesen Befehl ausgeführt:

username@laptopname:~/Android/adt-bundle/sdk/platform-tools$ adb devices

Die Ausgabe, die ich bekomme, ist:

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
????????????    no permissions

BEARBEITEN

crazydeveloper@crazydeveloper:~$ lsusb
Bus 002 Device 004: ID 0bb4:0c03 HTC (High Tech Computer Corp.) 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 04f2:b337 Chicony Electronics Co., Ltd 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
crazydeveloper@crazydeveloper:~$ ls -l /dev/bus/usb/004/
ls: cannot access /dev/bus/usb/004/: No such file or directory
crazydeveloper@crazydeveloper:~$ 

Bearbeiten: 2

Nach der Antwort hier ist die Ausgabe, die ich bekam:

crazydeveloper@crazydeveloper:~$ ls -l /dev/bus/usb/002
total 0
crw-rw-r--  1 root root    189, 128 May  7 09:45 001
crw-rw-r--+ 1 root root    189, 129 May  7 09:45 002
crw-rw-rw-  1 root plugdev 189, 130 May  7 09:48 003

Ich benutze Micromax Canvas 2.2 A114 - Android Version 4.2.2

Bitte hilf mir. Vielen Dank.


2
Ist USB-Debugging auf dem Android aktiviert?
Jon Hanna

Ja. es ist eingeschaltet.
Saiyajin Prince


1
Es sollte SUBSYSTEM sein, Singular.
Pakman

Antworten:


42

OK, hier sind alle Schritte, um dies zum Laufen zu bringen. Ich hatte Probleme mit allen Antworten, die ich online gefunden habe, überall ohne bestimmte Reihenfolge und ohne eine einzige funktionierende Lösung (mit Android Studio, Jmonkey 3D und Ubuntu 14.04).

Wenn ADB-Geräte zeigt Android-Gerät als ????????? (keine Berechtigungen) Befolgen Sie diese Anweisungen:

  1. Erstellen Sie die Datei /etc/udev/rules.d/51-android.rules

    sudo gedit /etc/udev/rules.d/51-android.rules
    
  2. Kopieren Sie den folgenden Inhalt und fügen Sie ihn ein:

    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0e79", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0502", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0b05", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="413c", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0489", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="091e", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="12d1", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="24e3", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2116", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0482", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="17ef", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1004", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="22b8", MODE="0666", GROUP="plugdev"    
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0409", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2080", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0955", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2257", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="10a9", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1d4d", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0471", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04da", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1f53", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04dd", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0fce", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0930", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="19d2", MODE="0666", GROUP="plugdev" 
    
  3. Führen Sie den folgenden Befehl aus, um die Dateiberechtigungen zu ändern:

    sudo chmod a+r /etc/udev/rules.d/51-android.rules
    
  4. Schließen Sie Ihr Telefon über USB an und führen Sie den folgenden Befehl aus:

    lsusb
    

    Suchen Sie nach Ihrem Gerät (en). Beispiel (Nexus 5):

    Bus 003 Gerät 074: ID 18d1 : 4ee7 Google Inc.

    Für Nexus 5 lautet die Vendor ID 18d1 , meine ist am Bus " 003 ". Wenn Sie beim Anschließen Ihres Geräts mit lsusb keine Änderung feststellen , ist Ihr USB-Kabel möglicherweise nur für den Ladevorgang geeignet .

  5. Laden Sie nun die Regeln mit den folgenden Befehlen neu:

    sudo udevadm control --reload-rules
    sudo service udev restart
    sudo udevadm trigger
    
  6. Stellen Sie sicher, dass das Gerät jetzt den Zugriff auf PlugDev- Benutzergruppen zulässt

    ls -l /dev/bus/usb/<bus number from step 4>
    

    Beispiel:

    ls -l /dev/bus/usb/003
    crw-rw-rw- 1 root plugdev 189, 329 Jul  3 18:23 074
    
  7. Führen Sie adb-Geräte aus , um zu bestätigen, dass die Berechtigungen korrekt sind, und genießen Sie es!

Hinweis: Wenn Sie die plugdev- Gruppe nicht erstellt und Ihren Benutzernamen hinzugefügt haben (wenn die Berechtigung verweigert wurde, stellen Sie "sudo" die folgenden Befehle voran ):

  1. Plugdev-Gruppe hinzufügen:

    groupadd plugdev
    
  2. Füge deinen Benutzernamen zur plugdev- Gruppe hinzu (useradd -G {group-name} username):

    useradd -G plugdev billy
    
  3. Starten Sie udev neu (möglicherweise müssen Sie sich abmelden und erneut anmelden, um die Benutzergruppe zu aktualisieren):

    sudo service udev restart
    

@EvanCarrol: Ihre Bearbeitung wird am besten als Schritt 0 vorgenommen, bevor Sie beginnen, nicht in der Mitte (Entschuldigung für die Ablehnung, aber dort macht es die Antwort weniger klar statt klarer): /
Fabby

Diese Antwort funktioniert gut. Nach dem Update auf 15.10 muss ich dies nach jedem Neustart tun. Funktioniert super.
Wir sind Borg

Kann ich es Sexy Answer nennen ... du hast meinen Tag dank Kumpel gemacht ...
Tushar Pandey

5

Versuchen Sie es plugdevlieber mit einer Gruppe als plugindev. Dann starte udev neu:

sudo udevadm control --reload-rules
sudo service udev restart

Wenn dies nicht funktioniert, finden Sie heraus, wo genau Ihr Gerät mit lsusb verbunden ist. Überprüfen Sie dann die Berechtigungen:

ls -l /dev/bus/usb/YOUR_USB_BUS_NO/

Die Tatsache, lsusbdie uns gab:

Bus 002 Device 004: ID 0bb4:0c03 HTC (High Tech Computer Corp.)

bedeutet, dass Ihr Mobiltelefon als Gerät 004 an Bus 002 angeschlossen ist. Daher hat udev ein Geräteobjekt erstellt /dev/bus/usb/002/004.

Bitte zeigen Sie uns die Geräteberechtigungen mit folgendem Befehl:

ls -l /dev/bus/usb/002/004

Als vorübergehende Problemumgehung können Sie die Gerätewelt mit diesem Befehl lesbar / beschreibbar machen (stellen Sie sicher, dass Ihr Telefon angeschlossen ist):

sudo chmod 666 /dev/bus/usb/002/004

Dann versuche es adb devicesnochmal.

Auch mir ist aufgefallen, dass Sie am Ende der udev-Regel haben OWNER="<username>". Sie haben das tatsächlich durch ersetzt, OWNER="crazydeveloper"nicht wahr?

Ihre Berechtigungen sind in Ordnung. udev hat das Gerät aufgegriffen und seine Berechtigungen auf 666 und die Gruppe auf plugdev gesetzt. Aus irgendeinem Grund hat es den Besitzer nicht zum CrazyDeveloper gemacht, aber das ist nicht so wichtig.

Stellen Sie sicher, dass Sie Mitglied der Gruppe plugdev sind. Verwenden Sie diesen Befehl:

sudo useradd -G plugdev crazydeveloper

Melden Sie sich dann ab, trennen Sie das Mobiltelefon vom Netz, melden Sie sich erneut an, schließen Sie es an und versuchen Sie es adb deviceserneut. Lassen Sie es wissen, was gerade passiert.


Bitte sehen Sie die Frage jetzt ..
Saiyajin Prince

Schau dir jetzt die Frage an.
Saiyajin Prince

Also I noticed that at the end of the udev rule you have OWNER="<username>". You did actually replace that with OWNER="crazydeveloper", didn't you ?Half mir. Danke :): D
Yash Sodha

Befolgen Sie Ihren Rat, aber es hat bei mir nicht funktioniert. Was funktioniert hat, ist das Umschalten über die vom Gerät bereitgestellten USB-Optionen. Versuchen Sie, von MTP auf PTP umzuschalten. Dieser hat für mich gearbeitet.
George D

4

Sie müssen 2 Dinge ändern:

  1. Ändern Sie das erste 'ATTR {idProduct}' in 'ATTR {idVendor}' in der 51-android.rules-Datei.

  2. Führen Sie diese Befehle vom Terminal aus:

    sudo ./adb kill-server
    sudo ./adb start-server
    sudo ./adb devices
    

3

Es ist vielleicht ein trivialer Fehler, wie ich in den 51-android.rules sehen kann, haben Sie den idProduct-Parameter verdoppelt, und es gibt keinen idVendor. Versuchen Sie, ihn einfach umzubenennen.


1

Mein Android-Gerät hatte das USB-Debugging, was ein Problem zu sein schien. Ich ging zu den Entwicklereinstellungen und schaltete es aus. Ich steckte das USB-Kabel wieder ein und es öffnete sich ein Fenster, in dem ich den USB-Speicher einschalten konnte. Dadurch hat mein Ubuntu 14.04 das Android-Gerät erkannt. Ich weiß nicht, ob alle Geräte diese Einstellung haben, aber es hat mein Problem behoben, während ich alle anderen Methoden ausprobiert habe. Vielen Dank


0

Ich hatte das gleiche Problem mit meinem Android-Gerät (HTC One (M7)) in Ubuntu 14.04. Also habe ich Windows 7.0 neu gestartet. Fand das gleiche Problem auch dort. Bei der Suche habe ich den folgenden Link gefunden. http://www.makeuseof.com/answers/why-is-my-windows-7-laptop-not-detecting-any-android-devices/

Ich habe * # 7284 # gewählt, wie von Gerry Anthony in diesem Link vorgeschlagen. Und es funktionierte unter Windows. Ich habe Ubuntu 14.04 neu gestartet und mein Android-Gerät wurde erkannt.



0

Nachdem ich alle oben und in anderen Diskussionsfäden aus anderen Foren beschriebenen Lösungsmöglichkeiten ausprobiert hatte, stellte ich fest, dass der Grund, warum mein HOX beschlossen hatte, nicht mehr mit meinem Laptop zu kommunizieren (14.04), ein einfacherer, mechanischer war. Das USB-Kabel an der Micro-USB-Buchse des Mobilteils war fehlerhaft. Durch die Verwendung des O / E-Kabels, das immer steifer und weniger langlebig zu sein schien als das bei der AsDa gekaufte Generikum, wurde der normale Service wieder aufgenommen.

Das DMM wurde dann eingesetzt, um zu zeigen, wie genau dieser Sachverhalt zustande gekommen war: Der Widerstand des + 5V-Versorgungskabels in diesem Kabel hatte sich bis zu einem Punkt erhöht, an dem er fast offen stand. Der R-Wert des mit einem HTC-Tag versehenen + 5-V-Kabels war nur geringfügig widerstandsfähiger als ein toter Kurzschluss, und ich wusste nicht genau, wie sich dies auf die Funktionsweise oder das Layout von Micro-USB auswirkte Bei der Datenübertragung kann nur davon ausgegangen werden, dass die Versorgungsschiene auf der E / A-Platine eines oder beider Geräte den + 5-V-Teil einer oder beider Buchsen auch für die Datenübertragung verwendet.

Was ich hier gelernt habe: Überprüfen Sie zuerst die einfacheren Dinge, bevor Sie sich mit installierter Software die Haare aus dem Kopf reißen, die so wiederhergestellt wurden, wie sie vor dem Auftreten des Fehlers aufgetreten waren!

HTC - 1, Zulieferer für Kabel von Associated Dairies - 0.


-1

Es sollte so sein:

SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c03", MODE="0666"

Dies gibt keine Antwort auf die Frage. Wenn Sie einen Autor kritisieren oder um Klärung bitten möchten, hinterlassen Sie einen Kommentar unter seinem Beitrag. Sie können jederzeit Ihre eigenen Beiträge kommentieren. Wenn Sie über eine ausreichende Reputation verfügen, können Sie jeden Beitrag kommentieren .
Fabby

@ Fabby Dies sieht aus wie ein Versuch, die Frage an mich zu beantworten ..
Seth
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.