EDIT: Ik heb het probleem ontdekt, denk ik. ADB kwam erachter dat ik niet op de laatste updates zat (ik had geen stagefright-update uitgebracht en ik wist het niet), dus ADB liet me niet debuggen. Alles is nu in orde.
Ik ben al ongeveer een maand bezig met het debuggen van mijn app op een AT&T HTC One M8. Toen ik vandaag mijn telefoon inplugde, kreeg ik de autorisatiepop-up niet. Na een uur probleemoplossing vond ik het probleem, maar geen oplossing.
Dit is de foutmelding die ik krijg in Android Studio 1.3.1:
apparaat niet geautoriseerd.
De$ADB_VENDOR_KEYS
van deze adbd is niet ingesteld; probeer ‘adb kill-server’ als dat verkeerd lijkt.
Controleer anders op een bevestigingsvenster op uw apparaat.
Ik heb $ADB_VENDOR_KEYS
gegoogled, maar het mocht niet baten.
Informatie:
- Telefoon: AT&T HTC One M8 met 5.0.1 (API 21)
- Android Studio versie 1.3.1 build 141.2135290
- JDK-versie: 1.8.0_60
Hoe krijg ik de pop-up weer? Ik moet fouten opsporen in mijn app
Antwoord 1, autoriteit 100%
In dit geval kunt u het volgende doen:
Ga in ontwikkelaarsopties op het apparaat
Schakel “USB-foutopsporing” uit en vink het opnieuw aan
Er zou dan een bevestigingsvenster moeten verschijnen
Antwoord 2, autoriteit 54%
Ik heb bijna alles geprobeerd, maar geen hulp…
Elke keer was gewoon dit
? ~ adb devices
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
aeef5e4e unauthorized
Het is me echter gelukt om het apparaat te verbinden!
Er is een tutor, stap voor stap.
- Bestaande adb-sleutels op pc verwijderen:
$ rm -v .android/adbkey*
.android/adbkey
.android/adbkey.pub
-
Verwijder bestaande geautoriseerde adb-sleutels op apparaat, pad is
/data/misc/adb/adb_keys
-
Maak nu een nieuw adb-sleutelpaar
? ~ adb keygen .android/adbkey
adb I 47453 711886 adb_auth_host.cpp:220] generate_key '.android/adbkey'
adb I 47453 711886 adb_auth_host.cpp:173] Writing public key to '.android/adbkey.pub'
-
Handmatig kopiëren van pc
.android/adbkey.pub
(pubkic-sleutel) naar apparaat op pad/data/misc/adb/adb_keys
-
Start het apparaat opnieuw op en controleer
adb devices
:
? ~ adb devices
List of devices attached
aeef5e4e device
Machtigingen van /data/misc/adb/adb_keys
zijn (766/-rwxrw-rw-)
op mijn apparaat
Antwoord 3, autoriteit 11%
bekijk deze url Android adb-apparaten ongeautoriseerddoe anders kort het volgende:
- zoek naar adbkey zonder extensie in platform-tools/.android en verwijder dit bestand
- kijk naar
C:\Users\*username*\.android
) en verwijder adbkey C:\Windows\System32\config\systemprofile\.android
en verwijder adbkey
Misschien vindt u het in een van de bovenstaande mappen. Of zoek gewoon naar adbkey in de bovenliggende mappen hierboven en zoek en verwijder.
Antwoord 4, autoriteit 9%
Als je een AVD hebt, kan dit helpen.
Open de AVD-managervanuit Android Studio. Kies de vervolgkeuzelijst rechts in de rij van uw apparaat. Voer vervolgens Gegevens wissenuit. Start uw virtuele apparaat opnieuw op en ADB zal werken.
Antwoord 5, autoriteit 5%
Ik heb alle methoden geprobeerd die hier worden vermeld en in Android adb-apparaten ongeautoriseerd
Wat uiteindelijk voor mij werkte, was de optie net onder USB Debugging ‘Revoke auths’
Antwoord 6, autoriteit 5%
Soms moet je gewoon een nieuw apparaat maken
Antwoord 7, autoriteit 4%
Ik had hetzelfde probleem met Ubuntu 18.04. Ik heb meerdere oplossingen geprobeerd, maar mijn apparaat (OnePlus 5T) was altijd ongeautoriseerd.
Oplossing
-
Udev-regels configureren op Ubuntu. Volg hiervoor de officiële documentatie:
https://developer.android.com/studio/run/deviceDe idVendor van mijn apparaat (OnePlus) wordt niet vermeld. Om het te krijgen, sluit u gewoon uw apparaat aan en gebruikt u
lsusb
:Bus 003 Device 008: ID 2a70:4ee7
In dit voorbeeld is
2a70
de idVendor. -
Bestaande adb-sleutels op Ubuntu verwijderen:
rm -v ~/.android/adbkey* ~/.android/adbkey ~/.android/adbkey.pub
-
‘USB-foutopsporingsautorisaties intrekken’ in uw apparaatconfiguratie (ontwikkelaarsopties).
-
Ten slotte, herstart de adb-server om een nieuwe sleutel te maken:
sudo adb kill-server
sudo adb devices
Daarna kreeg ik de autorisatieprompt op mijn apparaat en heb ik deze geautoriseerd.