Nie można połączyć Nexusa 4 z adb: nieautoryzowane

153

Mam Nexusa 4 z Androidem 4.3 i próbuję podłączyć urządzenie do komputera z Windows 7 64bit.

Zainstalowałem najnowsze sterowniki i najnowszą adbwersję. Myślę, że próbowałem prawie wszystkiego i nadal otrzymuję następujący komunikat:

C:\Program Files (x86)\Android\sdk\platform-tools>adb devices
List of devices attached
007667324ccb229b        unauthorized

Jaka może być przyczyna tego błędu?

lubS
źródło

Odpowiedzi:

263

Miałem podobną sytuację. Oto co zrobiłem:

Spróbuj zaznaczyć i odznaczyć opcję debugowania USB w urządzeniu. (jeśli nie działa, spróbuj odłączyć / podłączyć USB)

W pewnym momencie urządzenie powinno wyświetlić okno wiadomości z zapytaniem, czy autoryzujesz komputer. Po kliknięciu tak, urządzenie jest autoryzowane, a połączenie zostaje przechwycone.

Joe Huang
źródło
1
Tak, pobrałem sterownik USB, włączyłem debugowanie USB i miałem ten problem. Musiałem odłączyć / ponownie podłączyć S4, a następnie otrzymałem monit „autoryzuj” w S4. Teraz urządzenia adb pokazują „urządzenie” i mogę uruchamiać moje aplikacje.
Rob
4
Ta wiadomość o autoryzacji nigdy nie pojawiła się dla mnie, dopóki nie wyłączyłem autoodtwarzania systemu Windows, odznaczając opcję „Użyj autoodtwarzania” dla wszystkich multimediów i urządzeń. ”
user1985189
1. odłącz, usuń wszystkie dozwolone urządzenia, podłącz ponownie, sprawdź remember, 2.? 3. zysk!
Musiałem tylko poczekać około minuty, a na urządzeniu pojawiło się pole autoryzacji.
Ryan R
1
Sprawdź również, czy echo %ANDROID_SDK_HOME%ustawiono właściwą ścieżkę
sritmak
57

Rozwiązałem ten problem bez usuwania jakichkolwiek kluczy. Oto jak:

  1. Moje urządzenie zostało podłączone do komputera przez USB
  2. Upewniłem się, że Eclipse i monitor urządzeń z systemem Android nie są uruchomione.
  3. W wierszu poleceń wpisano: adb kill-server
  4. W wierszu poleceń wpisano: adb start-server
  5. Po ponownym uruchomieniu adb otrzymałem monit na moim urządzeniu o autoryzację, na którą zezwoliłem.
janoulle
źródło
To też zadziałało dla mnie. Pojawił się monit z prośbą o zaakceptowanie klucza RSA. Jeszcze kilka lat temu nie sprawiało mi tyle kłopotów. Ktoś coś
schrzanił
Zauważ, że po 'adb start-server' powinieneś zobaczyć '* demon nie działa. uruchomienie go teraz na porcie XXXX ', po którym następuje' demon rozpoczął pomyślnie * '. Jeśli tego nie zrobisz, część serwera zabijania nie zadziałała i może być konieczne zabicie wszystkich instancji adb z menedżera zadań / monitora aktywności.
Danny Parker
To jest poprawna odpowiedź. Samo usunięcie zaznaczenia, a następnie ponowne sprawdzenie opcji debugowania połączeń USB nic dla mnie nie pomogło, podobnie jak odłączenie i ponowne podłączenie kabla USB. Po tym, jak wykonałem adb kill-server, a następnie adb start-server, a następnie odznaczyłem debugowanie USB i ponownie sprawdziłem debugowanie USB, zadziałało.
MiloDC,
Ta odpowiedź rozwiązała problem, który miałem: moje urządzenie zostało autoryzowane, ale potem w jakiś sposób „zapomniałem”. Próbowałem wielu rzeczy, aby to naprawić, ale „adb kill-server” zakończył się wykonaniem zadania.
Richard Jones,
Mój telefon nie może się uruchomić, jest w pętli rozruchowej, nie mogę włączyć debugowania USB, jak mogę to zrobić!
MBX,
43

Zmień tryb połączenia USB z MTP na aparat (w przypadku Nexusa 7) lub ewentualnie na pamięć masową lub coś innego (w przypadku innych urządzeń). Ta opcja jest zwykle poniżej Settings -> Storage. Następnie podłącz urządzenie ponownie, pojawi się okno dialogowe autoryzacji.

Wiadomo, że protokół MTP koliduje z debugowaniem USB - te dwa w ogóle nie współpracowały na większości starszych urządzeń. Nexus 7 i wiele nowszych urządzeń pozwalają na współpracę obu tych urządzeń, ale ten konkretny problem sugeruje, że nie jest jeszcze tak płynnie.

Bonus - lista kontrolna, kiedy adbnie zachowuje się dobrze:

  • adb kill-server śledzony przez adb start-server
  • (na urządzeniu) Settings -> Developer Options -> USB Debugging - wyłącz i włącz
  • [Windows] Upewnij się, że masz odpowiedni sterownik (najlepszym rozwiązaniem jest Universal Adb Driver firmy Koushik Dutta - obsłuży każde urządzenie)
  • [Windows] Spróbuj wyłączyć wszystkie wymyślne skanery / zapory sieciowe chroniące przed złośliwym oprogramowaniem w locie
  • [Linux] Upewnij się, że masz odpowiednią regułę UDEV /etc/udev/rules.d/51-android.rules(znowu uniwersalne rozwiązanie: https://github.com/snowdream/51-android )
  • [Linux] Upewnij się, że wszystko poniżej ~/.androidnależy do Ciebie, a nie root(i popieraj tę odpowiedź )
  • zrestartuj urządzenie (tak, zaskakująco, to też jest ważny środek)
  • (Oczywiście) ponownie podłącz kabel, wypróbuj inny kabel, inny port, usuń wszystkie kable przedłużacza
Ivan Bartsov
źródło
To działało ładnie. Wydawało się, że zmusiło to maszynę z systemem Windows 7 do ponownej instalacji sterownika.
barconr
Rozwiązałem to dla mojego Nexusa 4. Dzięki
Diederik
Wow - to w końcu zadziałało! Od godzin próbowałem zmusić mojego Nexusa 7 do wyświetlenia okna dialogowego autoryzacji. Na przyszłość, aby zmienić tryb połączenia USB, musisz przejść do Ustawienia, Pamięć i nacisnąć przycisk ikony menu w prawym górnym rogu - porozmawiaj o niejasnych! Nie miałem zaznaczonego MTP ani Camera, ale jak tylko sprawdziłem opcję Camera, pojawiło się okno dialogowe (z podłączeniem oczywiście).
Jonathan
„[Linux] Upewnij się, że wszystko pod ~ / .android jest Twoją własnością, a nie root (i popieraj tę odpowiedź)” - to naprawiło to dla mnie. Dzięki!
Zoltán
To powinna być akceptowana odpowiedź ...! Wielkie dzięki.
Markon,
24

Myślę, że ma błąd, gdy urządzenie próbuje wyświetlić ekran z pytaniem o pozwolenie, więc się nie pojawia.

To działa dla mnie (polecenia są podane w adb shell):

  1. rm /data/misc/adb/adb_keys;
  2. Wysłałem klucz publiczny (adbkey.pub w ~ / .android /) z mojego komputera na moje urządzenie za pośrednictwem poczty elektronicznej;
  3. Invoke stop adbd;
  4. cat adbkey.pub >> /data/misc/adb/adb_keys (upoważniam się);
  5. start adbd (zrestartuj adb z nowymi kluczami).
Flavio
źródło
Czy „~ / .android /” to ścieżka Linuksa? - Gdzie moglibyśmy to znaleźć w systemie Windows?
BrainSlugs83
... Znalazłem go, znajduje się pod "% HOMEDRIVE %% HOMEPATH% \. Android", co jest naprawdę dziwnym miejscem do umieszczania rzeczy w IMO (przynajmniej w systemie Windows - dane aplikacji powinny być przechowywane w% AppData% ...) .
BrainSlugs83
Pracował u mnie w Galaxy S4 z którym nie mogę się połączyć kablem USB. Teraz mogę przynajmniej połączyć się z nim bezprzewodowo przez adb.
Alejandro Mezcua
1
Jedyny sposób, aby to zrobić, jeśli z jakiegoś powodu nie masz połączenia USB.
gnac,
1
Ta metoda jest szczególnie dobra, gdy masz zamurowane urządzenie.
Ian Wong,
17

Po upewnieniu się, że masz włączone debugowanie USB, odblokuj telefon i podłącz go do urządzenia przez USB. Zostaniesz poproszony o autoryzację komunikacji z komputerem, z którym się połączyłeś. Wyświetli również odcisk cyfrowy klucza RSA komputera.

wprowadź opis obrazu tutaj

Zaakceptuj to i jesteś gotowy!

Aniket Thakur
źródło
11

1.) Usuń ~ / .android / adbkey na komputerze stacjonarnym

2.) Uruchom polecenie „adb kill-server”

3.) Uruchom polecenie „adb start-server”

Powinien zostać wyświetlony monit o zaakceptowanie klucza debugowania.

user1078186
źródło
1
Ponadto usunąłem również adbkey.pub z mojego komputera stacjonarnego i / data / misc / adb / adb_key z mojego urządzenia z systemem Android. - Otrzymałem monit - i ADB zaczął ponownie działać przez jakiś czas - ale wkrótce po tym, jak umiera i wraca do trybu offline, nie ma pojęcia, dlaczego.
BrainSlugs83
Zszedłem dość daleko w dół listy odpowiedzi, ale to rozwiązanie w końcu rozwiązało problem.
Drew Dormann
Dzięki za udostępnienie. Usunięcie pliku adbkey i ponowne uruchomienie adb zadziałało.
Sujan Shrestha
9

Podobnie jak odpowiedź Flavio ( https://stackoverflow.com/a/18542792/1064996 ), miało to coś wspólnego z plikami ~/.android(na komputerze hosta, a nie telefonie).

Nie miałem ~/.android/adbkey, ale miałem ~/.android/debug.keystorei cały mój ~/.androidkatalog był własnością roota. Usunąłem plik kluczy, a także zmieniłem właściciela na mnie ( sudo chown -R $USER ~/.android), zabiłem serwer adb i podłączyłem telefon, i zadziałało.

Prawdopodobnie chodziło o własność. Upewnij się, że masz uprawnienia do odczytu / zapisu w~/.android

Vaz
źródło
1
Dzięki za odpowiedź link - idealnie. Problem z uprawnieniami na ~ / .android
dpb
1
uratowałeś mnie, dziękuję. Dlaczego nikt w całym internecie nie wspomniał o kwestii pozwolenia…
neustart47
8

Cztery łatwe kroki

./adb kill-server ./adb start-server

ponownie podłącz urządzenie, odblokuj je i zaakceptuj nowy klucz

Oussama L.
źródło
Dzięki, to był najprostszy sposób, biegłem, adb kill-server && adb start-serverbo to jednowierszowy. Podoba mi się ta metoda, ponieważ mój zespół programistów również korzysta z urządzenia z systemem Android, a zresetowanie opcji programisty, jak zasugerowano w innym miejscu, może być niedogodnością dla reszty zespołu.
Big Rich
8

W przypadku mojego Samsunga S3 musiałem przejść do opcji programisty w telefonie, odznaczyć pole wyboru „Debugowanie USB”, a następnie ponownie je zaznaczyć.

Następnie pojawi się okno dialogowe z pytaniem, czy chcesz zezwolić na debugowanie USB.

Gdy to zrobiłem, polecenie „ adb devices” nie wyświetlało już nazwy „ nieautoryzowane ” jako nazwy mojego urządzenia.

(Kilka miesięcy później ...)

Właściwie to samo dotyczyło podłączenia mojego urządzenia Galaxy Tab S , a opcje menu znajdowały się w nieco innych miejscach w systemie Android 4.4.2:

wprowadź opis obrazu tutaj

Mike Gledhill
źródło
7

Oto moja wersja kroków:

  1. Upewnij się, że adb jest uruchomiony
  2. W urządzeniu przejdź do Ustawienia -> opcje programisty -> Odwołaj uprawnienia do debugowania USB
  3. Odłącz urządzenie
  4. W powłoce adb wpisz> adb kill-server
  5. W powłoce adb wpisz> adb start-server
  6. Podłącz urządzenie

jeśli powłoka adb wyświetla pustą nazwę hosta, zrestartuj urządzenie

Vasudev
źródło
7

Miałem ten sam problem. Nie jestem pewien, czy są to te same kroki dla systemu Windows, co na urządzeniu z systemem OS X, ale możesz spróbować:

  1. Uruchom ponownie telefon w trybie odzyskiwania.
  2. Podłącz go do komputera.
  3. Otwórz terminal i wpisz:

    cd ~/.android
    adb push adbkey.pub /data/misc/adb/adb_keys
  4. Gotowe! Po prostu adb shell rebootpoczuj moc!

kiradotee
źródło
4
Właśnie zakończyłeś moją 2,5-godzinną frustrację !!
Deko
6

Miałem te same problemy z uzyskaniem tokena autoryzacyjnego na moim Nexusie 5 w systemie Windows 8.1. Nie miałem zainstalowanego najnowszego sterownika adb - jest to widoczne w menedżerze urządzeń. Pobrałem najnowszy sterownik USB ADB z Google tutaj: http://developer.android.com/sdk/win-usb.html

Zaktualizowano sterownik w menedżerze urządzeń, jednak włączanie / wyłączanie debugowania USB i odłączanie / podłączanie USB nadal nie działa. W końcu „adb kill-server” i „adb start-server” wymienione w innych odpowiedziach załatwiły sprawę po zaktualizowaniu sterownika.

Dan
źródło
To zadziałało w systemie Windows 7 po odinstalowaniu starego sterownika i zaznaczeniu pola wyboru „usuń sterownik”… a następnie ponownym zainstalowaniu nowego sterownika na urządzeniu.
Kaleb
4
  1. Upewnij się, że adb jest aktualny
  2. Upewnij się, że używasz sterowników USB Google: http://developer.android.com/tools/extras/oem-usb.html
  3. Upewnij się, że zmienna środowiskowa ANDROID_SDK_HOME jest ustawiona na poprawną ścieżkę
terranmoccasin
źródło
Ta odpowiedź powinna być wyższa - najnowsze wersje Android Studio wymuszają przeniesienie katalogu SDK poza ścieżkę instalacji AS. Wykonanie tego w systemie Windows bez przenoszenia ANDROID_SDK_HOMEzmiennej środowiskowej spowoduje wyświetlenie urządzeń jako unauthorized.
sigmabeta
To ... to faktycznie zadziałało. Mój ANDROID_SDK_HOME został ustawiony na ...\Android\sdkkiedy folder był w ...\Android\android-sdk. Zmiana tego i otwarcie nowego wiersza polecenia (aby użyć zaktualizowanych zmiennych środowiskowych) spowodowało wyświetlenie wyskakującego okienka po adb-devicesponownym uruchomieniu .
leewz
1

Ponownie zainstalowałem usbsterowniki i upewniłem się, że nie używam USB 3.0portu.

Następnie zamknąłem zaćmienie, zabiłem i uruchomiłem ponownie adb.

Zostałem natychmiast poproszony przez telefon o zezwolenie na dostęp do komputera. Po zaakceptowaniu zrestartowałem zaćmienie i teraz mój Galaxy S3 pojawia się w Menedżerze urządzeń.

user3188285
źródło
1

U mnie, gdy wyłączyłem MTP (w Ustawienia> Pamięć> Menu> MTP), w końcu dostałem monit RSA

David Jones
źródło
1

Jeśli korzystasz z Adb przez sieć, spróbuj połączyć się przez USB lub odwrotnie. To załatwiło sprawę dla mnie. Po jednokrotnym zaakceptowaniu zawsze działa później.

JohnyTex
źródło
1

Tego rodzaju stary post iw większości przypadków myślę, że odpowiedź, która została najbardziej pozytywnie oceniona, będzie działać na ludzi.

W Lollipopie na GPE HTC M8 nadal miałem problemy. Poniższe kroki zadziałały dla mnie.

  1. Przejdź do ustawień
  2. Stuknij w Pamięć
  3. Stuknij w 3 kropki w prawym górnym rogu
  4. Stuknij w Połączenie USB z komputerem
  5. ODKRYJ MTP
  6. UNCHECK PTP
  7. Wróć do konsoli, wpisz adb devices

Teraz powinieneś otrzymać wyskakujące okienko RSA na swój telefon.

trh
źródło
1

Nie otrzymałem odcisków palców RSA na moim telefonie.

Musiałem usunąć C:\Users\<userName>\.android\adbkeyi adbkey.pubpliki, a następnie zrobić zabić i restart serwera adb.

adb kill-server
adb start-server

Musiałem zatrzymać i ponownie uruchomić debugger i połączyć się jako USB w trybie PTP.

Ponieważ klucz autoryzacyjny RSA był przechowywany w tej ścieżce, zabicie i ponowne uruchomienie serwera adb nie pomogło.

lakme.1989
źródło
0

Udało mi się rozwiązać ten problem, wykonując czynności wymienione tutaj: http://forum.xda-developers.com/showthread.php?t=2247471

delete the computers adb key: rm /data/misc/adb/adb_key on device 

(I have no idea if in case of multiple authorized computers the additional keys are in a new line of the file or if they are in new files. I have only 1 computer.)

stop all adb processes "killall adb" in linuxoids and "taskkill /IM adb.exe" in windows or simply the taskmanager in both.

restart the phone

toggle usb debugging off and on

connect

use adb

click authorize
Quint Stoffers
źródło
nie działa ... ważna rzecz do wspomnienia: próbowałem podłączyć urządzenie do innego komputera z systemem Windows XP i działa bez problemów. więc wydaje mi się, że problem nie leży w kablu USB ani w samym urządzeniu, ale nie mogę znaleźć żadnego powodu, dla którego problem leży w komputerze ... dzięki !!
orS
Musiał użyć „taskkill / F / IM adb.exe” - „/ F” oznacza wymuszenie. Kiedy próbowałem go bez "/ F", powiedział mi, że nie można go zakończyć i że muszę użyć "/ F".
BrainSlugs83
0

Musiałem ponownie zainstalować mój sterownik adb, aby wyrwać się z tego problemu. Aby odzyskać telefon, zainstalowałem „Universal Naked Driver”. Odinstalowałem to i ponownie zainstalowałem sterownik z zestawu SDK systemu Android.

yladsr
źródło
0

Kiedy wyłączam Comodo Antivirus, wszystko wraca do normy. Wszystkie inne proponowane tutaj rozwiązania poszły na marne. Jakoś znalazłem jedno rozwiązanie.

Jeśli używasz Comodo Antivirus (wersja 6.3 / dla innych wersji szukaj podobnych opcji), poniższe rozwiązanie może Ci pomóc.

Otwórz Comodo> Zadania> Zadania zaawansowane> Otwórz Ustawienia zaawansowane> Ustawienia zabezpieczeń> Zapora> Ustawienia zapory> Zaawansowane: filtruj ruch zwrotny (np. 127.xxx, :: 1)

Odznacz tę opcję „Filtruj ruch zwrotny”, co uniemożliwia normalne działanie adb.

Zawstydzony
źródło
0

Użyj innego kabla USB. Niektóre kable mogą nie mieć wszystkich podłączonych pinów lub tak dalej, a gdy działają w celu przesyłania obrazu, debugowanie / adb nie działa.

Podsumowując: nie żartuję. Kabel, który działa na moim telefonie (działa adb) NIE działa na moim tablecie - urządzenie jest zawsze offline lub nieautoryzowane, a tablet nie wyskakuje żadnego okna dialogowego. Próbowałem wielu restartów, ustawień, wpadłem w szał i przeklinałem cholernego Androida. Potem przypadkowo podłączyłem kabel, który był dołączony do tabletu i nagle zadziałał. Moja fascynacja Androidem zdecydowanie minęła. Co za głupi śmieć.

Martin Vysny
źródło
0

Zdarzyło mi się to po tym, jak oprogramowanie do tworzenia kopii zapasowych zmieniło uprawnienia do katalogu użytkownika. Otworzyłem go w Eksploratorze plików, poprosił mnie o ustawienie uprawnień i naprawił problem.

Do Twojej wiadomości: Android ma specjalny katalog w „\ User \ .android”. Jeśli nie możesz uzyskać do niego dostępu, nie wyświetli się monit.

Dustin
źródło
0

Moja rozdzielczość była uruchamiana adb devicesz wiersza polecenia, poprawiona do aplikacji adb. Na przykład C: \ Android \ platform-tools \ adb devices. Uruchomienie tego polecenia zwróciło następujący wynik* daemon not running. starting it now on port 5037 * *daemon started successfully *

Następnie zobaczyłem, że urządzenie jest wymienione jako nieautoryzowane, odłączam USB, ponownie podłączam i zostałem poproszony o odcisk palca RSA.

Brad Martin
źródło
0

Miałem ten sam problem, stwierdziłem, że używam prostego kabla USB, który był przeznaczony tylko do ładowania, a nie do kopiowania danych. użycie dobrego kabla USB rozwiązało mój problem!

Narendra Sisodiya
źródło
0

Po prostu ponowne podłączenie załatwiło sprawę… Okno dialogowe uprawnień nie pojawiło się po pierwszym podłączeniu urządzenia, za drugim razem i wszystko jest w porządku.

Vic Torious
źródło
to powinna być Społeczność Wiki
fantaghirocco