Quand j'ai essayé d'insérer mon fichier apk dans une tablette, j'ai eu cette erreur, aidez-moi s'il vous plaît.
adb server is out of date. killing...
* daemon started successfully *
error: insufficient permissions for device.
Merci d'avance pour l'aide.
J'ai vu cette même erreur parfois sur Ubuntu. Une solution de contournement pour cela consiste à exécuter adb avec la commande Sudo
. Par exemple, si vous appuyez sur app.apk
sur sdcard, la commande sera
Sudo adb Push app.apk /mnt/sdcard
Assurez-vous également que vous avez sélectionné le mode "Débogage USB" dans les paramètres de l'application (dans Gingerbread) ou dans la section Développement (dans SandCream Sandwich et supérieur). Si adb est déjà en cours d'exécution, vous devez d'abord le tuer avec la commande Sudo adb kill-server
J'espère que cela aidera.
J'ai rencontré ce même problème. Ajouter une règle udev comme indiqué ici a fait le tour suivant:
Connectez-vous en tant qu'utilisateur root, créez un fichier /etc/udev/rules.d/51-Android.rules
et ajoutez une ligne comme celle-ci pour accorder des autorisations à quiconque appartenant au groupe plugdev
name__:
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
Dans cet exemple, l'ID du fournisseur est HTC. Vous devez utiliser l'ID de fournisseur de votre périphérique. Pour l'obtenir, exécutez lsusb
et recherchez une ligne comme celle-ci.
Bus 002 Device 009: ID 2a47:9e18
Dans cet exemple, votre identifiant de fournisseur serait 2a47
, vous devrez donc remplacer 0bb4
par 2a47
. La ligne correcte se lirait donc comme suit:
SUBSYSTEM=="usb", ATTR{idVendor}=="2a47", MODE="0666", GROUP="plugdev"
Maintenant, attribuez des autorisations de lecture sur les fichiers, rechargez udev et rechargez le démon adb:
Sudo chmod a+r /etc/udev/rules.d/51-Android.rules
Sudo udevadm control --reload-rules
adb kill-server
adb start-server
Vous devrez peut-être déconnecter et reconnecter votre appareil au port USB.
La réponse de Jorch914 sur StackOverflow a résolu ce problème pour moi:
Ok, donc j'ai finalement trouvé le problème, apparemment sur cet appareil, vous devez configurer pour vous connecter en tant qu'appareil photo (même après le débogage USB est déjà activé)
Aussi ce lien décrit le processus d'installation
Ces deux commandes simples ont résolu le problème pour moi:
adb kill-server
adb start-server
Notez que contrairement à réponse du semi-débutant je n'ai pas besoin de Sudo
.
Je viens de parcourir le même problème, mais voici comment j'ai pu le lire:
adb kill-server
(peut-être faux, mais je l'ai émis avec AND sans SudoSudo adb start-server
Je ne sais pas si vous savez, mais il existe un package qui inclut adb. Je mentionne cela parce que j'ai remarqué que vous obtenez une référence à une version plus ancienne de adb. Vous pouvez installer le système en tapant ce qui suit dans votre ligne de commande: Sudo apt-get install Android-tools-adb
J'espère que ça aide.
Aujourd'hui, j'ai rencontré l'erreur insufficient permissions for device
alors que adb
fonctionnait comme prévu quelques minutes auparavant. Maintenant je reçois:
$ adb devices
List of devices attached
???????????? no permissions
$ adb Shell
error: insufficient permissions for device
Peu de temps avant de rencontrer l'erreur, j'avais désactivé Media device (MTP)
, car je pensais que je n'aurais pas besoin d'utiliser MTP
name__. Cependant, il semble que le débogage USB, ou au moins certaines commandes adb
name__, nécessitent que Media device (MTP)
soit activé.
Pour activer Media device (MTP)
sur Android 4.4, accédez à:
Settings
Storage
The "..." menu (in the upper right corner)
USB computer connection
Media device (MTP)
Lorsque MTP
est désactivé, lsusb
indique ce qui suit:
Bus 002 Device 071: ID [idVendor1]:[idProduct1] Google Inc.
Après avoir activé MTP
name__, lsusb affiche les informations suivantes:
Bus 002 Device 072: ID [idVendor2]:[idProduct2] [idVendor string]
IdVendor et idProduct changent, selon que MTP
est activé ou non.
Je ne suis pas un expert Android. Il est donc possible que le comportement ci-dessus soit spécifique à mon modèle de téléphone.
Encore une autre possibilité: le partage de connexion USB entre également en conflit avec adb. Le désactiver résout le problème pour moi.
La réponse à ce problème se trouve ici: https://github.com/snowdream/51-Android
En tant que développeur Android, je vous suggère de ne PAS utiliser "Sudo" pour forcer l'utilisation de adb n'importe où. Ce n'est pas ce que nous devrions faire. Les règles, les politiques et les restrictions sont là pour notre propre sécurité.
J'ai le même problème et j'ai résolu le problème en ajoutant le chemin de your_Android_sdk_path à la variable d'environnement, comme
Sudo export $PATH:/your_Android_sdk_path/platform-tools/adb
vous pouvez ajouter cela à votre compte ou à l'ensemble du système en modifiant ces fichiers fichier ~/.bashrc
ou ~/.profile
ou /etc/profile, /etc/bash.bashrc, or /etc/environment
si vous souhaitez ajouter un accès à l'ensemble du système.
puis créer le lien de cela dans bin
Sudo ln -s /your_Android_sdk_path/platform-tools/adb /bin/adb
si vous avez utilisé des périphériques adb ou une commande, commencez par tuer le serveur comme
adb kill-server
puis démarrez le serveur comme
adb start-server
adb devices
vous pouvez maintenant voir que vos appareils sont listés correctement sans problème
Cela pourrait venir d'une autre raison. Je viens de recevoir cette erreur en essayant d'installer un apk sur le périphérique:
$ 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 -
C'est arrivé parce que l'appareil n'était pas prêt sur le mode correct. L'appareil partageait sa connexion 4G via USB.
On peut le savoir comme ça:
$ 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
Il suffisait donc de désactiver le partage de connexion sur le téléphone et de recommencer.
En général, assurez-vous d'avoir le résultat suivant via la commande adb device
avant d'essayer de transférer des fichiers sur le périphérique
$ adb devices -l
List of devices attached
33332EF19F3D00EC device usb:1-1.2
Dans ces cas, pas besoin de tuer ou de redémarrer le serveur adb.
Il en serait probablement de même si vous avez monté l'appareil pour le transfert de données via USB
J'ai eu le même problème et j'ai reçu des autorisations insuffisantes. Ce que j'ai fait a été de révoquer les autorisations USB pour mon ordinateur portable. Puis arrêté et commencé le débogage USB. Rebranchez-le à l'ordinateur portable et accordez des autorisations de débogage USB.