Kiedy próbuję:
$ adb devices
otrzymuję wynik:
List of devices attached
???????????? no permissions
Jaki jest problem?
wypróbowałem na komputerze Ubuntu 16.04 i działało idealnie. wypróbowałem urządzenie 7.1.1 i działało idealnie.
android
17.04
android-studio
adb
Nadav Tasher
źródło
źródło
sudo adb devices
. Jeśli to działa świetnie, ale z pamięci nie musiałem być rootem, aby sprawdzić podłączone urządzenia.Odpowiedzi:
Spróbuj zrestartować serwer Adb.
i wtedy
następnie podłącz urządzenie, włącz Debugowanie i wpisz
źródło
adb devices
pokazuje teraz urządzenie (i pojawia się okno dialogowe odcisków palców). Jednak nadal nie działa z Android Studio. Ponadto, kiedy uruchamiam Android Studio, a następnie uruchamiamadb devices
z konsoli, pojawia się komunikat „Serwer adb jest nieaktualny” i serwer adb uruchamia się ponownie. Następnie ponownie przechodzę do sytuacji „brak uprawnień”.Miałem ten sam problem. Zapewnienie, że tryb USB urządzenia NIE ładuje się tylko go rozwiązało.
źródło
Bardzo prawdopodobne, że udev nieprawidłowo dodaje urządzenie. Ja też miałem ten problem i znalazłem stosunkowo proste rozwiązanie.
Znajdź swoje urządzenie w lsusb
Punkt zainteresowania w tym przypadku:
Sprawdź odpowiedni plik urządzenia
Prawdopodobnie zobaczysz coś takiego
Oznacza to, że plik urządzenia będzie własnością root użytkownika i root grupy, dlatego adb może uzyskać do niego dostęp jako root, ale nie jako zwykły użytkownik.
Można to rozwiązać, tworząc nową regułę udev - użyłem
/etc/udev/rules.d/51-android.rules
- aby dodać urządzenie do grupyplugdev
, w której adb już zakłada, że jesteś członkiem (powinieneś to sprawdzićid
)** Pamiętaj, aby zastąpić ATTR {idProduct} == „4ee7” własnym identyfikatorem produktu, który znalazłeś w kroku pierwszym. ** (Jeśli twoim dostawcą nie jest Google Inc., zamień również identyfikator dostawcy na ten przed dwukropkiem w lsusb).
Teraz po prostu odłącz urządzenie i podłącz je ponownie (udev powinien automatycznie reagować na nowy plik) i tadaa:
Źródło: Dodanie reguł udev dla urządzeń z Androidem debugujących USB - Janos Gyerik
źródło
Aby rozszerzyć odpowiedź Sumeeta Deshmukha, jego podejście działa ogólnie - jeśli chcesz użyć
adb
polecenia z konsoli.Android Studio jednak najwyraźniej uruchamia własny serwer adb, zabijając nasz. Oznacza to, że po tym, jak zabiliśmy / uruchomiliśmy serwer za pomocą sudo, Studio uruchamia go ponownie, co prowadzi do sytuacji początkowej - bez uprawnień.
Rozwiązaniem jest najpierw uruchomienie Studio, a następnie uruchomienie / zatrzymanie serwera. W ten sposób udało mi się sprawić, aby mój Nexus 5X pojawił się jako prawidłowy cel uruchamiania w Studio.
To nie jest najlepsza sytuacja (konieczność uruchamiania poleceń przy każdym uruchomieniu programu Studio), ale robi to szybko i brudnie. Jeśli znajdę bardziej trwałe rozwiązanie, zaktualizuję tę odpowiedź.
źródło
Zmiana trybu USB z telefonu załatwiła sprawę. (Ustawiłem na Transfer plików ).
źródło
Proszę NIE śledzić rozwiązań sugerujących do użytku
sudo
(sudo adb start-server
)! Uruchamia to adb jako root (administrator) i NIE powinno tak działać !!! To ZŁE obejście !Wszystko, co działa jako root, może zrobić wszystko w twoim systemie, jeśli tworzy lub modyfikuje plik, może zmienić jego uprawnienia do używania tylko przez root. Znowu NIE!
Słuszne jest skonfigurować system, aby Użytkownik ma pozwolenie, sprawdź ten poradnik pisałem o tym, jak to zrobić poprawnie.
źródło
Nie działało to dla mnie po dodaniu się do
plugdev
grupy i ponownym uruchomieniu komputera, aby upewnić się, że zmiana zostanie zastosowana we wszystkich moich sesjach powłoki. Następnie odkryłem, że nie ma51-android.rules
pliku/etc/udev/rules.d
i musiałem wykonać następujące czynności, aby rozwiązać problem:Musiałem także odłączyć i ponownie podłączyć urządzenie z Androidem.
źródło
Musisz podać uprawnienia na swoim urządzeniu z Androidem. Przejdź do Ustawienia> Opcje programisty. Spróbuj wyłączyć i ponownie włączyć debugowanie USB. Odłącz kabel i podłącz go ponownie. Spróbuj także usunąć wszystkie zapisane autoryzacje z opcji programisty. Powinien teraz poprosić o pozwolenie na debugowanie przez monit w telefonie. Zaakceptuj to.
źródło
M0Rf30/android-udev-rules
Społeczność GitHub utrzymywała zasady udevhttps://github.com/M0Rf30/android-udev-rules/blob/master/51-android.rules
Jest to najbardziej kompletna lista reguł udev, jaką do tej pory widziałem, nawet bardziej niż obecnie zalecana
sudo apt-get install android-tools-adb
w oficjalnej dokumentacji , spróbuj.źródło
Nie mam pojęcia, dlaczego to działa, ale było to jedyne rozwiązanie, które działało dla mnie
Znajdź, gdzie działa adb (jeśli jesteś podobny do mnie, masz zainstalowanych wiele wersji). Pamiętaj, że narzędzia takie jak reaguj natywnie mogą zdecydować się na użycie losowych innych wersji, aby utrudnić Ci życie. Dla mnie to jest
~/Android/Sdk/platform-tools/adb
. Więc uruchomię:Narzędzia Android są bardzo denerwujące.
źródło
Przejdź do Ustawienia >> Konserwacja >> Przechowywanie. Następnie sprawdź lewe górne menu i kliknij połączenie USB z komputerem, a następnie zmień na Urządzenie multimedialne (MTP).
źródło