Gdy próbowałem wcisnąć plik apk na tablet, otrzymałem ten błąd, pomóżcie mi.
adb server is out of date. killing...
* daemon started successfully *
error: insufficient permissions for device.
Z góry dziękuję za pomoc.
Gdy próbowałem wcisnąć plik apk na tablet, otrzymałem ten błąd, pomóżcie mi.
adb server is out of date. killing...
* daemon started successfully *
error: insufficient permissions for device.
Z góry dziękuję za pomoc.
Odpowiedzi:
Czasami widziałem ten sam błąd na Ubuntu. Rozwiązaniem tego problemu jest uruchomienie adb z sudo
poleceniem. Na przykład, jeśli naciskasz app.apk
na sdcard, polecenie byłoby takie
sudo adb push app.apk /mnt/sdcard
Upewnij się również, że wybrałeś tryb „Debugowanie USB” w ustawieniach aplikacji (w GingerBread) lub w sekcji Programowanie (w IceCream Sandwich i nowszych). Jeśli adb już działa, powinieneś go najpierw zabić poleceniemsudo adb kill-server
Mam nadzieję, że to pomoże.
sudo
znajduje inną zainstalowaną wersję adb
niż non-sudo. Dlatego to działa, a nie dlatego, że adb
samo wymaga więcej uprawnień.
Natrafiłem na ten sam problem. Dodanie reguły udev jak wskazano tutaj pomogło:
Zaloguj się jako root, utwórz plik /etc/udev/rules.d/51-android.rules
i dodaj taki wiersz, aby dać uprawnienia każdemu w plugdev
grupie:
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
W tym przykładzie identyfikator dostawcy to HTC. Musisz użyć identyfikatora dostawcy dla swojego urządzenia, który można uzyskać, uruchamiając lsusb
i szukając linii podobnej do
Bus 002 Device 009: ID 2a47:9e18
W tym przykładzie sprzedawca ID byłoby 2a47
, więc trzeba by wymienić 0bb4
z 2a47
. Prawidłowa linia brzmiałaby zatem:
SUBSYSTEM=="usb", ATTR{idVendor}=="2a47", MODE="0666", GROUP="plugdev"
Teraz przypisz uprawnienia do odczytu plików, przeładuj udev i przeładuj demona adb:
sudo chmod a+r /etc/udev/rules.d/51-android.rules
sudo udevadm control --reload-rules
adb kill-server
adb start-server
Może być konieczne odłączenie i ponowne podłączenie urządzenia do portu USB.
plugdev
grupy. Uruchom, id
aby się dowiedzieć.
Odpowiedź Jorch914 na StackOverflow rozwiązała dla mnie ten problem:
Ok Więc w końcu znalazłem problem, najwyraźniej na tym urządzeniu musisz ustawić, aby połączyć się jako kamera (nawet po debugowaniu USB jest już włączony)
Również ten link opisuje proces konfiguracji
Te dwa proste polecenia rozwiązały dla mnie problem:
adb kill-server
adb start-server
Zauważ, że w przeciwieństwie do odpowiedzi semi-nowicjusza, nie potrzebuję sudo
.
adb shell ls
.
Właśnie natrafiłem na ten sam problem, ale oto, jak mogłem przez to przejść:
adb kill-server
(może być źle, ale wydałem go AND bez sudosudo adb start-server
Nie jestem pewien, czy wiesz, ale istnieje pakiet zawierający adb. Wspominam o tym, ponieważ zauważyłem, że otrzymujesz odniesienie do starszej wersji adb. Możesz zainstalować, wydając następujące polecenie w wierszu polecenia:sudo apt-get install android-tools-adb
Mam nadzieję, że to pomoże.
Dzisiaj napotkałem insufficient permissions for device
błąd, chociaż adb
kilka minut wcześniej działał zgodnie z oczekiwaniami. Teraz dostaję:
$ adb devices
List of devices attached
???????????? no permissions
$ adb shell
error: insufficient permissions for device
Na krótko przed napotkaniem błędu wyłączyłem Media device (MTP)
, ponieważ uznałem, że nie będę musiał używać MTP
. Wygląda jednak na to, że debugowanie USB lub przynajmniej niektóre adb
polecenia wymagają Media device (MTP)
włączenia.
Aby włączyć Media device (MTP)
na Androidzie 4.4, przejdź do:
Settings
Storage
The "..." menu (in the upper right corner)
USB computer connection
Media device (MTP)
Gdy MTP
jest wyłączone, lsusb
wyświetla następujące informacje:
Bus 002 Device 071: ID [idVendor1]:[idProduct1] Google Inc.
Po włączeniu MTP
lsusb wyświetla następujące informacje:
Bus 002 Device 072: ID [idVendor2]:[idProduct2] [idVendor string]
Programy idVendor i idProduct zmieniają się w zależności od tego, czy MTP
jest włączony, czy nie.
Nie jestem ekspertem od Androida, więc możliwe jest, że powyższe zachowanie jest specyficzne dla mojego konkretnego modelu telefonu.
Może być z innego powodu. Po prostu pojawia się ten błąd podczas próby zainstalowania aplikacji na urządzeniu:
$ adb install platforms/android/build/outputs/apk/android-armv7-release.apk
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
error: insufficient permissions for device
- waiting for device -
Stało się tak, ponieważ urządzenie nie było gotowe w odpowiednim trybie. Urządzenie współdzieliło połączenie 4G przez USB.
Można to tak nazwać:
$ adb devices -l
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
33332EF19F3D00EC no permissions usb:1-1.2
Wystarczyło więc wyłączyć udostępnianie połączeń w telefonie i zacząć od nowa.
Ogólnie rzecz biorąc, upewnij się, że adb device
otrzymałeś następujący wynik za pomocą polecenia przed próbą wypchnięcia plików na urządzeniu
$ adb devices -l
List of devices attached
33332EF19F3D00EC device usb:1-1.2
W takich przypadkach nie ma potrzeby zabijania ani restartowania serwera adb.
Prawdopodobnie byłaby to ta sama sytuacja, jeśli urządzenie zostało podłączone do przesyłania danych przez USB
Miałem ten sam problem i otrzymałem to niewystarczające uprawnienia. To, co zrobiłem, to odwołanie uprawnień USB dla mojego laptopa. Następnie zatrzymał się i rozpoczął debugowanie USB. Podłączyłem go z powrotem do laptopa i przyznałem uprawnienia do debugowania USB.
Mam ten sam problem i rozwiązałem ten problem, dodając ścieżkę do swojej ścieżki_android_sdk_path do zmiennej środowiskowej, takiej jak
sudo export $PATH:/your_android_sdk_path/platform-tools/adb
jej swoje życzenie, jak chcesz dodać do swojego konta lub systemu szerokości edycji tych plików ~/.bashrc
plik lub ~/.profile
lub
/etc/profile, /etc/bash.bashrc, or /etc/environment
jeśli u chcą, aby dodać do systemu powszechnego dostępu.
a następnie utwórz link do tego w koszu
sudo ln -s /your_android_sdk_path/platform-tools/adb /bin/adb
jeśli używałeś urządzeń adb lub jakiegokolwiek polecenia, najpierw zabij serwer jak
adb kill-server
następnie uruchom serwer jak
adb start-server
adb devices
teraz możesz bez problemu zobaczyć swoje urządzenia na liście
Odpowiedź na ten problem jest tutaj: https://github.com/snowdream/51-android
Jako programista Androida sugeruję, aby NIE używać „sudo” w celu wymuszenia użycia adb w dowolnym miejscu. Nie powinniśmy tego robić. Zasady, zasady i ograniczenia istnieją dla naszego własnego bezpieczeństwa.