Wenn ich ein verwurzeltes Android-Gerät als ADB-Host verwende, um den Adb-Befehl "Adb-Geräte" an Samsung S4 zu senden, wurde eine nicht autorisierte Fehlermeldung angezeigt. Wenn ich jedoch versucht habe, das Samsung Galaxy Nexus zu verwenden, funktioniert es einwandfrei. Kann mir jemand raten, wie ich mein Samsung S4-Problem lösen kann?
=========================================
# adb devices
List of devices attached
4d00f9169907301b unauthorized
=========================================
Danke im Voraus.
Edit: Festgestellt, dass dieses Problem nur bei Android 4.2.2 und höher aufgetreten ist. Der folgende Link erklärt, dass Google einige neue Sicherheitsfunktionen für die Verwendung von Adb implementiert hat.
http://nelenkov.blogspot.com/2013/02/secure-usb-debugging-in-Android-422.html
Ich freue mich, wenn jemand dabei helfen kann.
Holen Sie sich den öffentlichen Schlüssel vom Client-Telefon (Adb-Host).
cat /data/.Android/adbkey.pub
kopieren Sie den obigen öffentlichen Schlüssel an den Ort /data/misc/adb/adb_keys
des Zieltelefons. (Möglicherweise müssen Sie den Adb-Daemon zuerst mit stop adbd
stoppen.)
cat/data/misc/adb/adb_keys
stellen Sie sicher, dass beide cat
-Ausgaben übereinstimmen.
starten Sie den adb-Daemon auf Ziel start adbd
neu oder starten Sie ihn einfach neu.
Wenn Sie in den obigen Schritten Probleme beim Lesen oder Schreiben auf ADB KEYS haben, setzen Sie try die Umgebungsvariable ADB_KEYS_PATH
mit einem temporären Pfad (zB: /data/local/tmp
). Siehe jenen Link, auf den weitere Details verweisen
"On the Host, the user public/private key pair is automatically generated,
if it does not exist, when the adb daemon starts and is stored in
$HOME/.Android/adb_key(.pub) or in $Android_SDK_HOME on windows. If needed,
the ADB_KEYS_PATH env variable may be set to a :-separated (; under
Windows) list of private keys, e.g. company-wide or vendor keys.
On the device, vendors public keys are installed at build time in
/adb_keys. User-installed keys are stored in /data/misc/adb/adb_keys"
Aktivieren und deaktivieren Sie die USB-Debugging-Option im Gerät. Wenn dies nicht funktioniert, trennen Sie das USB-Kabel und schließen Sie es einige Male an.
An einem bestimmten Punkt sollte das Gerät ein Meldungsfeld anzeigen, in dem Sie zur Autorisierung des Computers aufgefordert werden. Klicken Sie auf Ja und das Gerät wird autorisiert.
Wenn jemand ein ähnliches Problem mit einem zerbrochenen Bildschirm hat und auf adb zugreifen muss:
Wenn Sie vergessen haben, den Entwicklermodus zu aktivieren, und Ihre Anzeige nicht ausgeführt wird, führen Sie folgende Schritte aus:
adb devices
eingeben, sollte das Gerät in der Liste angezeigt werden.Wenn ja, tippe:
adb Shell mount /system
abd Shell
echo "persist.service.adb.enable=1" >> default.prop
echo "persist.service.debuggable=1" >> default.prop
echo "persist.sys.usb.config=mtp,adb" >> default.prop
echo "persist.service.adb.enable=1" >> /system/build.prop
echo "persist.service.debuggable=1" >> /system/build.prop
echo "persist.sys.usb.config=mtp,adb" >> /system/build.prop
Wenn Sie jetzt Ihr Telefon neu starten, wird Android Ihnen sagen: "Oh, Ihre Anzeige funktioniert, aber tippen Sie bitte auf diese OK-Schaltfläche, damit wir Ihrem PC vertrauen können". Und natürlich, wenn wir nicht auf das Telefon tippen können, bleiben Sie im Wiederherstellungsmodus und führen Folgendes aus (vorausgesetzt, Sie befinden sich nicht im Adb-Shell-Modus, wenn dies der Fall ist, geben Sie zuerst exit
ein):
cd ~/.Android
adb Push adbkey.pub /data/misc/adb/adb_keys
Hurra, jetzt sollte alles hunky-dory sein! Starten Sie das Telefon einfach neu und Sie sollten in der Lage sein, auf adb zuzugreifen, wenn das Telefon ausgeführt wird:
adb-Shell-Neustart
P.S. War mit OS X und Moto X Style, das mit dem rissigen Bildschirm ist.
Hast du es versucht
adb kill-server
adb Shell
Manchmal bleibt adb stecken und tötet zuerst den adb-Server und startet dann einen Befehl, der das Autorisierungsfenster öffnet.
Bitte überprüfen Sie auch die Adb-Client-Version auf Ihrem Telefon. Diese Funktion wird von Adb 1.0.31 unterstützt, soweit ich mich erinnere.
Erfahrung mit: ASUS ZENFONE
Wenn überhaupt, haben Sie den fehlenden Treiber für Asus Zenfones erlebt Folgen Sie diesem Link ( Http://donandroid.com/how-to-install-adb-interface-drivers-windows-7-xp- Vista-623 )
Ich habe es mit versucht
1) Töten und Starten des ADB-Servers bei ADB-Cmd.
2) Usb-Debugging ein- und ausschalten und ...
Das ist was mit mir gearbeitet hat.
Schritt 1: Trennen Sie die Verbindung mit dem Gerät und schließen Sie Eclipse
Schritt 2: Navigieren Sie zu C: /Users/User_name/.Android/
Schritt 3: Sie finden adb_key
Schritt 4: Löschen Sie es einfach.
Schritt 5. Verbinden Sie sich erneut und das System fragt Sie erneut.
Schritt 6 .Bitte fragen Sie das Gerät an den RSA-Schlüssel, wenn Sie dazu aufgefordert werden. Ich denke es ist fertig.
Wenn Sie nach ein paar Tagen mit demselben Problem konfrontiert sind, deaktivieren Sie das USB-Debugging und aktivieren Sie es
Sie müssen Allow USB debugging
zulassen, wenn das Popup angezeigt wird, wenn Sie sich zum ersten Mal mit dem Computer verbinden!
Für mich konnte der Emulator die Google Play-Dienste nicht aktivieren. Es könnte Google APIs oder x86 oder x64 sein, aber nicht Google Play Store.
Löschen Sie den Ordner .Android
aus C:/users/<user name>/.Android
. Es hat das Problem für mich gelöst.
Versuchen Sie diese Schritte:
Sie müssen das USB-Debugging in Ihrem Gerät zulassen, wenn Popup angezeigt wird.
Sie müssen in Ihrem s4-Bildschirm zur Autorisierung dieses Computers aufgefordert werden. Sie können es sagen, um sich daran zu erinnern. Dies geschieht aus Sicherheitsgründen in Android 4.4 und höher
Ich habe eine Lösung mit Nexus 5 und TWRP gefunden. Grundsätzlich war das Format die einzige Lösung, die ich gefunden habe, und ich habe alle hier aufgeführten Lösungen ausprobiert: ADB Android Device Unauthorized
Bitten Sie Google, eine Sicherungskopie Ihrer Apps zu erstellen. Speichern Sie alle wichtigen Dateien, die Sie möglicherweise auf Ihrem Telefon haben
Bitte beachten Sie, dass ich jegliche Haftung im Fehlerfall ablehne, da das, was ich tat, ziemlich riskant war, aber in meinem Fall funktioniert hat:
Aktivieren Sie das USB-Debugging in der Entwickleroption (nicht sicher, ob es geholfen hat, da das Gerät nicht autorisiert wurde, aber trotzdem ...)
Stellen Sie sicher, dass Ihr Telefon mit dem Computer verbunden ist und Sie auf den Speicher zugreifen können
Laden Sie google img Ihres Nexus herunter: https://developers.google.com/Android/nexus/images Entfernen Sie Ihre Dateien und legen Sie sie in einem neuen Ordner auf Ihrem Computer ab tun).
aLLE Daten löschen ... Sie haben 0 Dateien in Ihrem Android, auf die Sie vom Computer aus zugreifen können.
Starten Sie dann den BOOTLOADER-Modus neu. Sie erhalten die Meldung "Sie haben kein Betriebssystem installiert. Sind Sie sicher, dass Sie einen Neustart durchführen möchten?"
Führen Sie dann die .bat-Datei im Ordner "factory" (Doppelklick) aus.
In der Befehlszeile wird eine detaillierte Installation des Betriebssystems angezeigt. Vermeiden Sie natürlich, das Kabel in dieser Phase zu lösen ...
Die Initialisierung des Telefons dauert etwa 5 Minuten.
Aus unbekannten Gründen hatte ich nur ~/.Android/adbkey
, aber nicht ~/.Android/adbkey.pub
.
Ich vermute, dass adb
den öffentlichen Schlüssel nicht auf das Gerät übertragen konnte und das Gerät daher niemals den Autorisierungsdialog anzeigen konnte.
Nachdem Sie den AdB-Server beendet, die Datei adbkey
entfernt und adb
erneut gestartet haben, wird der Autorisierungsdialog auf dem Telefon angezeigt.
Ich musste das Kästchen für den Debugger auf dem Telefon aktivieren "auf diesem Telefon immer zulassen". Ich habe dann ein ADB-Gerät gemacht und dann den ADB-Befehl eingegeben, um die Adds zu löschen. Es hat gut funktioniert. Vorher hat es die pm und andere Befehle nicht erkannt