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?

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.


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.

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

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).

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!


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.


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


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


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


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


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!


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.


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ę

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ń.


1

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


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.


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.


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.


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

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.


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.


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ć.


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.


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.


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!


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.