Konfiguracja:
- Windows 8.1
- Wersja ADB: 1.0.32
- Smartfon: Oneplus One
Problem
Zainstalowałem sterowniki Samsunga tak, jak się mówi. Kiedy uruchomiłem polecenie urządzeń ADB, powiedziało nieautoryzowane .
Już próbowałem:
Zrobiłem wszystko, co zostało powiedziane w tym poście: https://stackoverflow.com/a/25546300/1848376
Problem polega jednak na tym, że nie otrzymuję przez telefon monitu z informacją, że muszę zaakceptować połączenie.
Kiedy uruchamiam polecenie
adb shell
, oto odpowiedź:error: device unauthorized. This adbd's $ADB_VENDOR_KEYS is not set; try 'adb kill-server' if that seems wrong. Otherwise check for a confirmation dialog on your device.
Zrobiłem "adb kill-server", ale to niczego nie zmieniło. Czemu?
android
adb
unauthorized
oneplusone
julestruong
źródło
źródło
Odpowiedzi:
Zadziałało.
źródło
Istnieją programiści Thankgod xda: http://forum.xda-developers.com/verizon-lg-g3/help/unable-to-access-adb-t2830087
Wystarczyło usunąć plik adbkey w C: Users / $ Name / .android adbkey.pub brakowało.
Uruchom ponownie po tym i oba pliki są tam.
Jeśli to nie zadziała: - Spróbuj cofnąć autoryzację USB DEBUGGING. - Włącz ponownie debugowanie USB.
źródło
.android.old
na po bezpiecznej stronie, ale jak tylko zrestartowałem serwer adb i cofnąłem autoryzacje, mój telefon od razu mnie o to poprosił! @julestruong thanks!Kolejno:
adb kill-server
w USTAWIENIU URZĄDZENIA przejdź do opcji programisty i wyłącz debugowanie USB
naciśnij ODWOŁAJ autoryzacje debugowania USB, kliknij OK
włącz debugowanie USB
adb start-server
źródło
Usunąłem następujące pliki z folderu ~ / .android :
Wyłączyłem i włączyłem ADB w urządzeniu i teraz działa ...
źródło
adbkey
plik, więc go usunąłem i działało jak urok. Dzięki!w opcjach programisty,
(jeśli nie ma menu opcji programisty, musisz kliknąć 3 razy numer kompilacji menu stanu telefonu, aby zostać programistą. możesz skorzystać z menu opcji programisty).
źródło
Usuń istniejące adbkeys
LUB
Zmień nazwę adbkeys
Najlepszą praktyką jest zmiana nazw kluczy, ponieważ zapewnia to kopię zapasową.
cd ~/.Android
mv adbkey adbkey2
mv adbkey.pub adbkey.pub2
Następnie zatrzymaj i uruchom serwer
cd ~/Android/Sdk/platform-tools
Zlokalizuj urządzenie
/Android/Sdk/platform-tools$ ./adb devices
/Android/Sdk/platform-tools$ ./adb kill-server
/Android/Sdk/platform-tools$ ./adb start-server
Następnie zatrzymaj emulator Otwórz menedżera AVD, kliknij strzałkę w dół, a następnie kliknij wyczyść dane
Uruchom ponownie emulator. Wtedy wszystko działa dobrze :)
źródło
Spróbuj usunąć zaznaczenie opcji „weryfikuj aplikacje przez USB” w opcjach programisty, a następnie włącz i wyłącz „Debugowanie USB”. U mnie to działa.
źródło
Upewnij się, że zaakceptowałeś naciśnięty przycisk "ok", gdy pyta, że pokazuje odcisk palca urządzenia po podłączeniu przez USB do komputera.
źródło
W studiu Android
Run menu > Run
pokazujeOFFLINE ...
dla podłączonego urządzenia.Poniżej znajduje się procedura rozwiązania tego problemu:
(Przeczytaj najpierw poniższą notatkę) Usuń
~/.android/adbkey
(lub zmień nazwę na~/.android/adbkey2
, jest to jeszcze lepsze, jeśli chcesz go z jakiegoś powodu z powrotem)Uwaga : zdarzyło mi się zrobić ten krok, ale nie rozwiązało problemu, po wykonaniu wszystkich poniżej kroki zadziałało, więc nie jestem pewien, czy ten krok jest wymagany.
Uruchom
locate platform-tools/adb
Uwaga : użyj ścieżki, która pochodzi stąd w poniższych poleceniach
Zabij serwer adb:
sudo ~/Android/Sdk/platform-tools/adb kill-server
Otrzymasz
Allow accept..
wyskakujące okienko z wiadomością na swoim urządzeniu. Zaakceptuj to. To ważne, co rozwiązuje problem.Uruchom serwer adb:
sudo ~/Android/Sdk/platform-tools/adb start-server
W Android Studio, zrób
Run menu > Run
jeszcze razWyświetli się coś w stylu
Samsung ...
(nazwa producenta twojego telefonu).Tym razem poprawnie instaluje apk na urządzeniu bez błędów.
Mam nadzieję, że to pomoże.
źródło
adbkey
iadbkey.pub
od.android
katalogu w katalogu głównym.Dokonaj
.android
katalogu w domu z 710 uprawnieniami:$ chmod 710 .android/
a własność jako:chown -R <user>:<user> .android/
. Dawny:$ chmod 710 .android/ $ chown -R ashan:ashan .android/
Przejdź do opcji programisty w telefonie komórkowym i dotknij opcji
Revoke USB debugging authorizations
Wyłącz wszystko
USB Debugging
iDeveloper Options
w urządzeniu i odłączyć urządzenie od komputera.Podłącz ponownie urządzenie i najpierw włącz
Developer Options
. Następnie włączUSB debugging
.W tym momencie w telefonie komórkowym pojawi się monit o prośbę o pozwolenie. Uwaga: musisz zaznaczyć pole
always accept from this ….
wyboru i kliknąć OK.Teraz w ciebie maszynie uruchomić serwer adb:
adb start-server
.Miejmy nadzieję, że kiedy wydasz polecenie:
adb devices
teraz zobaczysz, że twoje urządzenie jest gotowe do autoryzacji.źródło
Mnie też uderzył ten problem. Korzystam z własnej wersji AOSP na Nexusie 5X. Dodałem pojedynczą linię w build / core / main.mk:
diff --git a/core/main.mk b/core/main.mk index a6f829ab6..555657539 100644 --- a/core/main.mk +++ b/core/main.mk @@ -362,6 +362,8 @@ else # !enable_target_debugging ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0 endif # !enable_target_debugging +ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1 + ## eng ## ifeq ($(TARGET_BUILD_VARIANT),eng)
Teraz
adb shell
działa dobrzeTe materiały są przydatne (artykuły chińskie): http://www.voidcn.com/blog/kc58236582/article/p-6335996.html , http://blog.csdn.net/fanmengke_im/article/details/28389439
źródło
a następnie uruchom polecenia, jak wspomniano powyżej, tj
.
źródło
Żadna z metod wymienionych na tej stronie nie działała dla mnie; konkretnie:
/data/misc/adb
zawieraadb_keys
pliku~/.android/adbkey
też nie pomogłoadb: error: failed to get feature set: device unauthorized. This adb server's $ADB_VENDOR_KEYS is not set Try 'adb kill-server' if that seems wrong. Otherwise check for a confirmation dialog on your device. - waiting for device -
W końcu znalazłem tutaj bardzo przydatny post , który sugerował ręczne umieszczenie zawartości pliku
~/.android/adbkey.pub
wewnątrz/data/misc/adb/adb_keys
pliku.Zaproponowali jedną z tych dwóch metod:
Z innego działającego urządzenia skopiuj
adb_keys
plik na swój komputer:# On the other Android device cp /data/misc/adb/adb_keys /sdcard
# From your computer adb pull /sdcard/adb_keys .
Następnie umieść
adb_keys
plik roboczy na karcie sdcard urządzenia z systemem Android, którego dotyczy problem (za pomocą sieci Web lub MTP) o nazwie jakoadb_keys
, a następnie skopiuj plik do właściwej ścieżki:# On the problematic device cp /sdcard/adb_keys /data/misc/adb/adb_keys
Inną metodą jest po prostu skopiowanie komputera
adbkey.pub
z~/.android/
katalogu i umieszczenie go na karcie sdcard urządzenia z systemem Android (przy użyciu sieci Web lub MTP) o nazwie asadb_keys
, a następnie skopiowanie pliku do właściwej ścieżki:# On the problematic device cp /sdcard/adbkey.pub /data/misc/adb/adb_keys
(Uwaga: istnieje podobna odpowiedź na SO, która zawiera dalsze szczegóły dotyczące tej metody).
Odkąd uruchomiłem serwer WWW na moim komputerze i miałem
curl
zainstalowałem system Android,su
uruchomiłem z terminala i uruchomiłem na moim urządzeniu z Androidem:cd /data/misc/adb curl 192.168.1.35:8080/adbkey.pub > adb_keys
Zabito
adb
demona (używającadb kill-server
) i BAM !adb
Shell działało dobrze, jak powinno być od początku.Mam nadzieję, że opisana tutaj metoda działa tak samo, jak w przypadku mnie.
źródło
Twoja aplikacja jest wykrywana jako szkodliwy program. Wyłącz opcję „Weryfikuj aplikacje przez USB”. Jest to ten sam widok, co „debugowanie USB”.
źródło
Wszystko, czego potrzebujesz, to autoryzacja trybu debugowania.
1. Upewnij się, że urządzenie jest podłączone do komputera.
2. Zezwól na autoryzację do trybu debugowania przez Android-Studio, przechodząc do
Uruchom -> Dołącz debugger do procesu Android
, a zobaczysz wyskakujące okienko umożliwiające tryb debugowania w urządzeniu,
naciśnij OK. Gotowe.
mam nadzieję, że komuś to pomoże.
źródło
Miałem ten sam problem po ponownej instalacji mojego studia Android. Oto, co zrobiłem, aby mój adb znów działał:
-path to C:\Users\User\AppData\Local\Android\sdk\platform-tools -Shift+r.click and start command from here instead.
źródło
dla każdego, kto napotka to później, może to również pomóc. Napotkałem dokładnie ten problem, próbując użyć adb z wiersza polecenia użytkownika, a powyższe odpowiedzi nie pomogły, ale problem zniknął z „serwerem zabijania adb” podczas uruchamiania w wierszu polecenia administratora.
źródło
To zadziałało dla mnie:
rm ~ / .android / adbkey.pub
sudo ./adb kill-server
sudo ./adb start-server
sudo ./adb -s emulator-5554 install ~ / apk_to_install.apk
Nie jestem pewien, czy to dobry pomysł, aby uruchomić adb z uprawnieniami sudo, ale był to jedyny sposób, w jaki to działa. Pozdrowienia.
źródło
Otrzymałem to jako root, gdy jako użytkownik inny niż root otrzymywałem błędy uprawnień podczas próby połączenia się z niestandardowym odzyskiwaniem (Philz). więc zabiłem serwer adb, skopiowałem podkatalog .android mojego konta użytkownika do / root, chained -R do root.root i zrestartowałem serwer adb. Jestem za!
źródło
To zadziałało dla mnie
1- Go to ~/.android/ and remove “adbkey” 2- Disconnect USB connection 3- adb kill-server 4- Revoke USB debugging authorizations (in developer option) 5- Reconnect the device to the Ma 6- adb devices
źródło
Przypuszczam, że masz włączone opcje programisty na urządzeniu w swoim smartfonie? Jeśli nie, możesz przyjrzeć się krokom udostępnianym przez Androida, http://developer.android.com/tools/device.html#developer-device-options
źródło
W przypadku FIRE STICK 4K w oknie dialogowym faktycznie jest napisane:
W przeciwnym razie sprawdź, czy na urządzeniu pojawiło się okno dialogowe z potwierdzeniem
Rzeczywiście, na telewizorze w drugim pokoju było okno dialogowe z potwierdzeniem. Doh '!
źródło
Miałem ten problem i nie został on rozwiązany przez usunięcie jakichkolwiek kluczy (przynajmniej ich usunięcie nie pomogło, może jednak miało to wpływ po tym, jak to naprawiłem)
W rzeczywistości wystąpiła rozbieżność między moją wersją sdk-tools a moją wersją Android Studio. Po aktualizacji narzędzi nadal nie działało, ale po aktualizacji AS (do wersji 1.4) wszystko znów działało dobrze.
Zawsze aktualizuj razem sdk-tools i wersję AS;)
źródło