Unzureichende Berechtigungen für das Gerät in Android Studio Workspace, das in openSUSE 13.2 ausgeführt wird

Lesezeit: 8 Minuten

Benutzeravatar von portsample
portample

Ich habe ein gerootetes Motorola Defy +, auf dem ein benutzerdefiniertes Cyanogenmod v11-ROM (Nightly Build) ausgeführt wird, das von erstellt wurde Quarx. Wenn ich Android Studio Workspace, (ASW) v.1.1.0 verwende, erhalte ich, wenn ich versuche, auf diesem Gerät zu debuggen

????????????[null]

aufgeführt in der Wählen Sie Gerät Fenster, wobei das Logcat-Fenster angezeigt wird

insufficient permissions for device

Ich würde dieses Gerät und ROM wirklich gerne für Debugging-Zwecke verwenden.

Wenn ich eintrete lsusb Von der Befehlszeile bekomme ich,

Bus 002 Device 002: ID 22b8:431d Motorola PCS

Dies ist die korrekte Geräte-ID für Motorola-Geräte. Ich habe 51-android.rules und 71-android.rules installiert /etc/udev/rules.d/ mit den korrekten Motorola-IDs in diesen Dateien.

Ich habe auch versucht Widerrufen Sie die USB-Debugging-Autoritätaus Entwickleroptionen auf dem Gerät, ohne Glück.

Ich habe nicht versucht, ASW als root auszuführen, in der Hoffnung, dass es eine andere Option geben könnte; Gibt es?

Aktualisieren: Ich konnte in ADB einsteigen und darauf zugreifen

uvachem-gsmith2:/home/greg/Android/Sdk/platform-tools # ./adb

Ich habe dann einen Kill-Server durchgeführt, eine SU für den Root-Benutzer durchgeführt und den Server neu gestartet. Ich habe dann versucht, mich von Android Studio aus mit dem Gerät zu verbinden. Ich habe auf dem Gerät eine Meldung über das Akzeptieren des RSA-Schlüssels vom PC erhalten, „Ja“ gesagt und konnte die App dann auf dem Gerät bereitstellen. Also zurück zu meiner ursprünglichen Frage: Gibt es eine andere Möglichkeit, auf dieses Gerät zuzugreifen, ohne sich als Root anzumelden? Es scheint, als ob es ein Berechtigungsproblem im Telefondateisystem gibt, das dies verhindert …

Update Nr. 2 Das Kernproblem hier war eine Erlaubnissache. Obwohl das Ausführen von ADB als Root den Zugriff auf die verwurzelt Android-Gerät, eine bessere Lösung besteht darin, die Berechtigungen in der udev-Datei für dieses Gerät zu ändern … 664 auf 666 zurückzusetzen (siehe Antwort unten). Dadurch kann der PC auf das Dateisystem auf dem Gerät zugreifen.

  • Ich weiß, dass dies ein vereinfachter Ansatz sein könnte, aber haben Sie das USB-Debugging in den Entwicklertools aktiviert? Könnte es vorher mit einem Adb-Root versuchen. Und auch und abd remount

    – Bogdan V.

    24. Februar 2015 um 20:04 Uhr

  • @BogdanV. Ja, USB-Debugging ist aktiviert. Bitte erweitern Sie die Vorschläge in Ihren letzten beiden Sätzen. Vielen Dank.

    – portample

    24. Februar 2015 um 20:12 Uhr


  • Gehen Sie zu einem Terminal und geben Sie “adb devices” ein. Wenn Sie Ihr Gerät sehen, sieht die Android Debug Bridge (adb) das Gerät. Wenn dies der Fall ist, geben Sie „adb root“ ein, damit adb in der Lage ist, adb-Shell-Befehle als root auszugeben. Führen Sie dann einen adb-Remount durch, um Zugriff auf das gesamte Dateisystem auf dem Gerät zu erhalten. Wenn es immer noch nicht funktioniert, liegt das Problem bei Android Studio

    – Bogdan V.

    24. Februar 2015 um 20:39 Uhr

  • @BogdanV. Android Debug Bridge (ADB) wird weder als Benutzer noch als Root gefunden. Ich habe “adb devices” sowie “./adb devices” ausprobiert, wobei “no such file or directory” zurückgegeben wurde. Derzeit debugge ich mit Android Studio auf einem Panasonic Toughpad und habe keine Probleme.

    – portample

    24. Februar 2015 um 21:07 Uhr

  • Dies ist eigenartig, da adb ein grundlegendes Android-SDK-Tool ist. Möglicherweise haben Sie das Verzeichnis der Android-SDK-Plattform-Tools nicht zum Pfad hinzugefügt. Aber wie auch immer, wenn Sie eine Lösung haben, verwenden Sie diese.

    – Bogdan V.

    24. Februar 2015 um 21:12 Uhr

Ich hatte dies bei der Verwendung eines Linux-Computers mit einem Nexus 4 mit Android 5.1

Die Lösung bestand darin, sowohl „Debuggen über USB“ als auch „Als MTP verbinden“ zu aktivieren. Das Gegenteil ist der Fall, wenn Sie dasselbe Gerät und Android Studio und adb unter OSX verwenden. Damit Android Studio das Mobilteil erkennen kann, muss ich „Als MTP verbinden“ deaktivieren.

  • Ich bin in derselben Entwicklungsumgebung mit zwei verschiedenen Geräten auf ein ähnliches Verhalten gestoßen und fand, dass es erwähnenswert ist, dass jeder, der wie ich zu diesem Beitrag geführt hat, erwähnenswert ist. Ich habe ein LG Realm, das nur in Android Studio (unter Linux Mint) funktioniert, wenn ich eine Verbindung über MTP herstelle, und ein LG Logos, das nur funktioniert, wenn ich eine Verbindung über PTP herstelle. Es kann sich also lohnen, bei jedem problematischen Gerät an beiden Optionen zu basteln. Seltsam, ich habe gerade über eine Stunde gebraucht, um das herauszufinden …

    – BMB

    24. April 2016 um 19:19 Uhr


  • Das ist seltsam, aber es ist so. Ich bin mir nicht sicher, ob ich das Gerät montieren muss oder nicht.

    – Jamie

    28. Juli 2017 um 18:06 Uhr

  • Auf meinem Pixel XL musste ich „Use USB to transfer photos (PTP)“ auswählen.

    – yohosuff

    14. März 2018 um 0:57 Uhr

  • Auch bei Android Studio (3.0.1) musste ich MTP aktivieren.

    – ffonz

    25. März 2018 um 15:01 Uhr

  • Unter Android 8 finden Sie diese Option unter Entwickleroptionen -> Netzwerk -> USB-Konfiguration auswählen: MTP (Media Transfer Protocol).

    – Lucio Paiva

    13. Oktober 2018 um 20:06 Uhr

Ich habe eine einfache Antwort gefunden, die für mich funktioniert hat:

adb kill-server
sudo adb start-server
sudo adb devices

Sie werden Ihr Gerät dann finden. Hoffe das hilft.

Bezug: http://itsfoss.com/fix-error-insufficient-permissions-device/

  • Fürs Protokoll, die sudo Teil von sudo adb start-server ist wichtig.

    – qd

    22. August 2017 um 15:01 Uhr

  • es zeigt eine Liste der angeschlossenen Geräte Emulator-5600 offline HNB1WC81 nicht autorisiert

    – Saravanan Nandhan

    11. Oktober 2017 um 5:44 Uhr

  • Hat gut funktioniert ..in Xiomi ..Note 3

    – Prem Singh Bist

    2. Juni 2018 um 6:19 Uhr

Es ist einfach. Ändern Sie einfach Ihren USB-Modus in den Dateiübertragungsmodus, dann funktioniert es.

  • Um es klar zu sagen, nehmen Sie diese Änderung auf dem Gerät vor. Bei meinem OnePlus ist es drin Einstellungen > Entwickleroptionen > Wählen Sie USB-Konfiguration > MTP (Medienübertragungsprotokoll)

    – Don Smith

    22. Mai 2019 um 2:52 Uhr

  • Diese Antwort hat bei mir funktioniert. Für Xiaomi Mi A2 Einstellung->Angeschlossene Geräte->USB->Dateiübertragung auswählen.

    – Saleh Enam Shohag

    23. Juli 2019 um 18:04 Uhr


  • Das hat bei mir auch funktioniert. Ich verwende Ubuntu mit Xiaomi Redmi Note 5. Wählen Sie einfach Dateiübertragung anstelle des Standardmodus “Laden”.

    – rahmatns

    17. Juni 2020 um 4:00 Uhr

  • Funktioniert mit Ubuntu, Flutter.

    – Eray Erdin

    27. April 2021 um 20:06 Uhr

  • Ubuntu 22.04 funktioniert wie ein Zauber.

    – Danny Sofftie

    24. August um 10:06 Uhr

Benutzeravatar von kelalaka
kelalaka

Android 8

MTP ist nicht mehr verfügbar. Auf meinem Android 8 funktionierte die Option “Dateien übertragen” nicht.

“Fotos PTP übertragen” hat funktioniert und Studio hat den Gerätenamen angezeigt.

  • Schritte auf Ihrem Handy

    1. Öffnen Sie die Entwickleroptionen
    2. Aktivieren USB-Debugging.
    3. Ändern Sie die USB-Verbindung zu PTP
  • Schritte unter Linux

    1. auf Konsole ausführen sudo usermod -aG plugdev $LOGNAME

Android 9

Mit Android 9 verwenden Sie die Option File Transfer.

Benutzeravatar von portsample
portample

Ändern der Berechtigungen in dieser Zeile von /etc/udev/rules.d/51-android.rules,

#Motorola 
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0664", GROUP="plugdev"

zu,

#Motorola 
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev"

behebt dieses Problem auf eine Weise, die es NICHT erfordert, adb als root auszuführen.

  • Ja, wenn Sie allen Benutzern Berechtigungen erteilen, die funktionieren, aber Ihre Regeldateien basieren auf der Idee, dass Sie Ihr Benutzerkonto zur Plugdev-Gruppe hinzufügen, sich abmelden und dann wieder anmelden müssen – das gibt dir die “Gruppe” 6 im Original 0664.

    – Chris Stratton

    25. Februar 2015 um 19:40 Uhr


  • Diese Datei existiert für mich nicht, da ich Elementary OS Freya verwende

    – Mark O’Sullivan

    4. November 2016 um 11:43 Uhr

  • Ich habe diese Datei gerade auf Ubuntu 14.04 für ein Huawei-Gerät erstellt. Funktioniert perfekt! Danke für diese Antwort!!

    – BenRoob

    19. Juni 2017 um 9:37 Uhr


  • Ich musste den Adb-Server danach neu starten, um zu bekommen adb shell arbeiten

    – rrosa

    29. Juni 2017 um 3:45 Uhr

  • hat bei mir funktioniert, musste aber zuerst die Datei erstellen, da sie nicht existierte, und dann den idVendor in den Wert in lsusb ändern (siehe greg93-Antwort). Dies sollte nicht Teil des Beginns der Entwicklung unter Linux sein.

    – Stärkungsmittel

    23. November 2017 um 11:11 Uhr

Benutzeravatar von ranit
Ranit

In meinem Telefon Symphonie W75optional USB-Computerverbindung-> auswählen Als Mediengerät verbinden (MTP) hat das Problem gelöst.

  • Ja, wenn Sie allen Benutzern Berechtigungen erteilen, die funktionieren, aber Ihre Regeldateien basieren auf der Idee, dass Sie Ihr Benutzerkonto zur Plugdev-Gruppe hinzufügen, sich abmelden und dann wieder anmelden müssen – das gibt dir die “Gruppe” 6 im Original 0664.

    – Chris Stratton

    25. Februar 2015 um 19:40 Uhr


  • Diese Datei existiert für mich nicht, da ich Elementary OS Freya verwende

    – Mark O’Sullivan

    4. November 2016 um 11:43 Uhr

  • Ich habe diese Datei gerade auf Ubuntu 14.04 für ein Huawei-Gerät erstellt. Funktioniert perfekt! Danke für diese Antwort!!

    – BenRoob

    19. Juni 2017 um 9:37 Uhr


  • Ich musste den Adb-Server danach neu starten, um zu bekommen adb shell arbeiten

    – rrosa

    29. Juni 2017 um 3:45 Uhr

  • hat bei mir funktioniert, musste aber zuerst die Datei erstellen, da sie nicht existierte, und dann den idVendor in den Wert in lsusb ändern (siehe greg93-Antwort). Dies sollte nicht Teil des Beginns der Entwicklung unter Linux sein.

    – Stärkungsmittel

    23. November 2017 um 11:11 Uhr

Benutzeravatar von greg93
greg93

Lange zu kurz, ich hatte das gleiche Problem mit einem Prestigio PMP5570C Tablette,

Alles, was Sie tun müssen, ist, auf Ihrem Tablet zu bestätigen, dass Sie Daten auf/von Ihrem Computer kopieren möchten (was ich vergessen habe), und die 2 Zeilen hinzuzufügen, die @portsample geschrieben hat.

Sie finden die idVendor Ihrer Geräteeingabe

lsusb

in UBUNTU 12.04 erhalten Sie dann:

Bus 001 Gerät 011: ID 2207:0010,

wobei 2207 Ihre Anbieter-ID ist. Frage und Antwort zusammengefasst…

1418720cookie-checkUnzureichende Berechtigungen für das Gerät in Android Studio Workspace, das in openSUSE 13.2 ausgeführt wird

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy