web-dev-qa-db-fra.com

Android 4.2.2 - adb offline, même après la mise à niveau du SDK

Edit: Fixé! On dirait qu'il y a de très nombreuses causes possibles à cela. Le mien était l'un des plus inhabituel ...


J'ai mis à jour SDK Tools à 21.1 et Platform-tools à 16.0.1. Vérifié avec adb version que je suis en train d'exécuter v1.0.31. Ma machine de développement exécute Windows 7, x64.

J'ai quatre appareils 4.2.2 à tester, un Galaxy Nexus avec chargeur de démarrage déverrouillé mais non enraciné, et Nexuses One, 4, 7 et 10, tous en stock.

Le Nexus One, <4.2.2, fonctionne parfaitement avec adb, mais tous les périphériques 4.2.2 apparaissent en mode "hors ligne" dans adb et je n'ai jamais vu la boîte de dialogue de sécurité RSA apparaître sur les périphériques, même après plusieurs redémarrages. de la BAD (en utilisant kill-server), le PC et les périphériques eux-mêmes. 

J'ai essayé d'utiliser différents ports et câbles USB. J'utilise les pilotes standard "Android ADB Interface" du SDK, mais j'ai également essayé les pilotes "Android Composite ADB Interface" et "Samsung Composite ADB Interface". J'ai même complètement réinstallé le SDK à partir du kit ADT.

Chose étrange, mon collègue peut faire en sorte que la fenêtre contextuelle s'affiche sur ces mêmes appareils sans aucun problème. J'ai même copié ses adb.exe et dll et essayé cela et cela ne fonctionnerait toujours pas sur le mien. Il n'a pas installé à partir du paquet; il a installé ADT dans Eclipse, à l'ancienne, mais je doute que cela fasse une différence. Ce qui donne?!

Edition 26/02/2013, 16h41 GMT: Une mise à jour de Platform-tools 16.0.2 vient d'être publiée. N'a pas mis à jour ADB (v1.0.31) et n'a toujours pas vu le périphérique en mode hors connexion, et aucune fenêtre contextuelle de sécurité RSA n'est en vue. 

20
warbi

Il s'est avéré que ma variable d'environnement Android_SDK_HOME désignait un ancien emplacement qui n'existait plus. Cela n'avait pas causé d'autres problèmes (étrangement), mais cela semble avoir empêché le processus d'authentification RSA de se dérouler. J'aurais probablement dû le voir quand je vérifiais la variable PATH la semaine dernière, mais tant pis.

J'ai trouvé l'emplacement étrange en lançant ce qui suit et en vérifiant la lecture:

adb kill-server
set ADB_TRACE=all
adb nodaemon server

Après la mise à jour de l'emplacement et le redémarrage de mon PC, tout fonctionne correctement. Merci à tous ceux qui ont répondu.

18
warbi

La meilleure solution que j'ai trouvée est: 

  1. Vérifiez votre version d'adb en utilisant la commande: adb version pour Windows et ./adb version pour Linux. 
  2. S'il affiche 1.0.29, veuillez le mettre à niveau vers 1.0.31 car 1.0.29 ne répondra pas pour JB 4.2.X 
  3. Cela résoudra le problème de votre appareil hors ligne. 
  4. Si votre système possède déjà le nouvel adb (1.0.31) et fait face à ce problème, ouvrez sdk et mettez à niveau les outils de la plate-forme vers 16.0.1. 
  5. Redémarrez votre appareil au moins une fois .. :) cela fonctionnera correctement pour tous les appareils ...
8
JAGDEESH GAIRA

J’ai eu exactement le même problème, et c’est ce qui a fonctionné pour moi: si vous avez créé plusieurs comptes d’utilisateur sur votre appareil Nexus 7, vous n’obtiendrez pas la sécurité contextuelle à moins d’être connecté au même compte qui était utilisé pour activer le débogage USB sur le périphérique. Faites cela et lorsque vous verrez la fenêtre contextuelle, assurez-vous de cocher la case "Toujours faire confiance à cet ordinateur", cela devrait également fonctionner pour les autres comptes.

6
gammal

Cela fonctionnera certainement: Dans la plate-forme-outils, maintenez la touche Maj enfoncée et cliquez avec le bouton droit de la souris . Sélectionnez la commande ouverte Invite ici.

adb kill-server

périphériques adb

Dites oui à popup sur le téléphone.

Votre appareil sera connecté.

Si cela ne fonctionne toujours pas, essayez de reconnecter le périphérique et de rechercher à nouveau des périphériques adb

3
gndps

ADB_TRACE a révélé la réponse à mon problème (un problème d'autorisations avec le dossier ~/.Android sur mon système Linux empêchait la génération de la clé). Merci beaucoup pour cela.

3
JohnG

Plusieurs fichiers adb.exe?

Mon problème a été résolu en supprimant une copie de OLD adb.exe de C:/Windows/. Je ne sais pas comment une copie de adb.exe est arrivée dans C:\Windows \?

Lorsque je lance adb.exe à partir de Android-sdk/platform-tools/je n’ai rencontré aucun problème de détection.

2
user1269737

Je l'ai fait et cela fonctionne sur mes fenêtres 8:

  1. Ouvrir un ordinateur - Gérer dans le gestionnaire de fichiers
  2. Sur le système Outils/Gestionnaire de périphériques, supprimez tous les éléments liés à Android existants.
  3. Cliquez sur "Rechercher les modifications sur le matériel".
  4. L'appareil apparaît comme un panneau d'avertissement.
  5. faites un clic droit sur le périphérique, cliquez sur "Mettre à jour le logiciel du pilote".
  6. choisissez Android_SDK_HOME\sdk\extras comme source de pilotes.
  7. Sur le périphérique, désactivez et désactivez le débogage USB (ou plusieurs fois)

Wow, le popup apparaît dans l'appareil!

2
Quande

J'ai eu le même problème et la configuration. Windows 7, x64, Eclipse Indigo, un utilisateur sur l'appareil, etc.

J'ai essayé adb devices avec v1.0.31 et je n'ai vu aucune fenêtre apparaître sur le périphérique. J'ai essayé toutes sortes de combinaisons d'activation/désactivation du débogage, de branchement USB, de redémarrage de l'appareil, etc. Rien n'a fonctionné. J'ai également essayé de rooter le périphérique afin de copier manuellement le fichier d'empreinte digitale. Cependant, l'appareil est tombé en panne de réparation (ne pas recommander à personne). J'ai plus d'un Nexus 10, alors j'ai continué à essayer avec les autres.

J'utilise cependant bootcamp (avec Windows sur un ordinateur portable Mac), donc une dernière tentative a été d'essayer la même chose sous OSX. Lors de la première tentative avec ./adb devices à partir du terminal, la fenêtre s’affiche. J'ai accepté les empreintes digitales et cela fonctionne maintenant sous OSX.

Je préfère Windows à OSX, ce n’est donc pas une solution idéale car je ne parviens toujours pas à le faire fonctionner sous Windows. Je garderai un œil ouvert pour des solutions à ce problème, mais en attendant, j'espère que cela aidera d'autres personnes à résoudre leurs problèmes de bootcamp.

1
BlueVoodoo

J'ai eu le même problème que OP mais provenant d'une copie adb.exe dans C:\Windows , un peu comme user1269737 est apparu. Cela avait la priorité dans Windows PATH, donc peu importe combien de fois j'ai mis à jour le SDK, cela n'aiderait pas, car la BAD mise à jour n'était pas utilisée.

Quelqu'un m'a dit que c'était peut-être une version du bundle Android Studio qui l'avait installée là-bas (allez comprendre ...). Je ne peux pas le confirmer parce que: 1. Les bundles AS actuels ne semblent pas le faire et ... 2. J'installe beaucoup de flasheurs/outils ROM qui incluent ADB (XDA Developers stuff).

Donc, je ne peux pas confirmer que c'était Android Studio. 

Protip: utilisez les commandes adb version et where adb dans cmd pour vérifier quelle version vous utilisez et quel exécutable vous utilisez

0
leRobot

J'ai essayé toutes ces choses et je ne pouvais toujours pas amener Windows à afficher l'invite RSA sur mon appareil Android. Après les heures de travail, voici comment je le fais fonctionner:

  1. Connecter le périphérique au PC via USB
  2. [Touche Windows] + [R]> [type] devmgmt.msc
  3. Localisez votre appareil dans la liste 
  4. [Clic droit]> Désinstaller
  5. Téléchargez le package de pilote USB Google: http://developer.Android.com/sdk/win-usb.html#top
  6. Extrayez le zip sur votre bureau
  7. Retour à devmgmt.msc> [clic droit] racine de l'arborescence> Rechercher les modifications sur le matériel
  8. Localisez votre appareil dans la liste
  9. [Clic droit] sur votre périphérique> Installer> Choisir/Parcourir les fichiers
  10. Accédez au dossier usb_driver que vous avez extrait sur votre bureau.
  11. Windows utilisera le pilote Google USB au lieu du pilote de votre téléphone. 

Mon problème était que le pilote LG était installé sur Windows. Une fois que j'ai supprimé cela et installé le pilote Google, cela fonctionne parfaitement. L’invite RSA s’affiche tout de suite. 

0
fix

J'ai eu ce problème et j'ai trouvé une réponse: soit je me tenais au téléphone, soit je ne faisais pas attention, soit je ne l'ai simplement pas fait apparaître en disant que la vérification de la clé de publication RSA autorisait l'ordinateur, mais je continuais à obtenir le statut hors ligne. J'ai suivi toutes les directions de la carte, depuis la liste longue dans mon fichier de règles jusqu'à la réinstallation de ADB 50 fois. Oui, il faut que ce soit la version 1.0.31 que j'ai. Si tel est votre cas, lisez la suite ....

Déconnectez votre appareil . Utilisez ces commandes dans le terminal, en supposant que vous utilisez BASH.

adb kill-server
Sudo bash
cd ~
mv .Android BAK.Android

Maintenant que vous avez supprimé la clé RSA initiale, assurez-vous que le débogage USB est activé sur le périphérique. Rebranchez l'appareil et faites attention à l'écran. Assurez-vous de cocher la case "Mémoriser cet ordinateur". Appuyer sur OK. Problème résolu.

0
user2435255

Flip Android débogage sur le périphérique off et de nouveau. Cela m'a donné la fenêtre contextuelle de l'appareil.

0
satadru

Passer des pilotes USB Samsung (fournis avec le Nexus Root Toolkit) aux pilotes USB fournis par Google (via leur kit de développement logiciel) a été très utile.

0
rsp1984

J'utilise Windows 7, un compte sur Nexus7. Je devais cocher la case "toujours faire confiance à cet ordinateur" pour que cela fonctionne. Peu importait le nombre de fois où j’ai reçu l’acceptation de faire apparaître et de sélectionner OK. Cela n'a pas fonctionné avant d'avoir finalement coché la case. Maintenant ça va et est reconnu par adb.

0
severine

J'ai eu le même problème. Vous ne savez pas si cela s'applique, mais utilisez-vous adb en tant que root?

Pour moi tuer le serveur adb et faire:

Sudo ./adb devices list

a abouti à une invite de sécurité. Après l'avoir accepté pernamently et avoir exécuté la commande ci-dessus, je l'ai enfin connecté.

0
Marcin Raczkowski