adb ne trouve pas mon appareil / téléphone (MacOS X)


178

Faire du développement Android sur un Mac et ce tout nouveau téléphone que je possède n'apparaît pas dans la liste des appareils dans adb . Beaucoup d'autres téléphones et appareils fonctionnent bien pour moi, donc je sais que ma configuration est bonne.

Le débogage est activé (Paramètres -> Applications -> Développement -> Débogage USB) sur le téléphone, mais il ne s'affiche tout simplement pas lorsque je cours adb devices


pour toute personne aux prises avec un téléphone Samsung, j'ai trouvé que je devais installer Kies pour que l'appareil soit reconnu
DevDave

8
Vous devez utiliser le PTP lors du débogage USB au lieu du multimédia (MTP) -
aurny2420289

Vous pouvez essayer ceci plus youtube.com/watch?v=w90AXR40AXI
Ifgeny87

Réponses:


351

Mise à jour supplémentaire : ne sous-estimez pas la valeur d'un bon câble USB. Parfois, il suffit de changer de câble.

La mise à jour pour les nouvelles versions d'adb ~/.android/adb_usb.inidoit être supprimée.

Résumé analytique: ajoutez l'ID du fournisseur ~/.android/adb_usb.iniet redémarrez adb

Détails complets: la plupart du temps, rien ne sera nécessaire pour que le Mac reconnaisse le téléphone / l'appareil. Sérieusement, 99% du temps "ça marche".

Cela étant dit, le moyen le plus rapide de réinitialiser adb est de le redémarrer avec les commandes suivantes dans l'ordre:

  adb kill-server
  adb devices

Mais de temps en temps, la adb devicescommande ne parvient tout simplement pas à trouver votre appareil. Peut-être que si vous travaillez avec un appareil expérimental ou prototype ou hors de l'ordinaire, il est peut-être simplement inconnu et n'apparaîtra pas.

Vous pouvez aider adb à trouver votre appareil en lui indiquant l '«identifiant du fournisseur» de votre appareil, en lui fournissant essentiellement un indice. Cela peut être fait en mettant l'ID de fournisseur hexadécimal dans le fichier~/.android/adb_usb.ini

Mais vous devez d'abord trouver la valeur de l'ID du fournisseur. Heureusement sur Mac, c'est assez facile. Lancez l' application Informations système . Il se trouve dans le /Applications/Utilities/dossier, ou vous pouvez y accéder via le menu Apple dans le coin supérieur gauche de l'écran, sélectionnez "À propos de ce Mac", puis cliquez sur le bouton "Plus d'infos ...". Capture d'écran ici:

Informations système, arborescence USB du matériel

Développez l'arborescence "Matériel", sélectionnez "USB", puis recherchez votre périphérique cible. Dans l'exemple ci-dessus, mon appareil s'appelle "SomeDevice" (je l'ai fait dans Photoshop pour masquer le véritable fabricant de l'appareil). Un autre exemple serait une tablette Samsung qui apparaît comme "SAMSUNG_Android" (btw, je n'ai rien fait de spécial pour faire fonctionner la tablette Samsung.) Quoi qu'il en soit, cliquez sur votre appareil et les détails complets s'afficheront dans le volet ci-dessous. C'est là qu'il répertorie l'ID du fournisseur. Dans mon exemple de la capture d'écran, la valeur est 0x9d17- utilisez cette valeur dans la commande suivante

echo 0x9d17 >> ~/.android/adb_usb.ini

Ce n'est pas grave si vous n'aviez pas déjà ce adb_usb.inifichier avant cela, la plupart du temps, il n'est tout simplement pas nécessaire pour trouver votre appareil, il n'est donc pas inhabituel que ce fichier ne soit pas présent. La commande ci-dessus le créera ou l'ajoutera au bas de celui-ci s'il existe déjà. Maintenant, exécutez les commandes listées ci-dessus pour redémarrer adb et vous devriez être prêt à partir.

adb kill-server ; adb devices

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
123ABC456DEF001 device

2
J'étais sur le point de vous voter contre juste pour avoir utilisé les mots "résumé exécutif", mais lorsque vous avez fini par résoudre mon problème, j'ai décidé de voter pour vous à la place :-)
Jason Whitehorn

22
Pour moi c'était le câble - très apprécié
Dan Green-Leipciger

9
c'était le câble, je ne peux pas le croire, tous les câbles fournis avec les tables indipad ne fonctionnent pas!
Samuel

4
Ouais pour moi c'était le câble aussi! Je cherchais des informations sur les pilotes et les fichiers de configuration, mais ce n'était que le câble! Merci pour votre mise à jour supplémentaire
darksider

4
Problème de câble ici aussi. Merci!
JakobMillah

46

Solution spécifique à Nexus 4 et Nexus 5 pour OS X

Aucun appareil n'est répertorié dans la "Liste des appareils connectés" lorsque j'ai exécuté: appareils adb

Réparer:

  1. Obtenez le SDK (dernière version) sur developer.android.com
  2. Mettez le mode développeur sur le nexus 4 (À propos du téléphone> Numéro de build> appuyez 7 fois pour accéder au mode Dev)
  3. Une nouvelle option de menu apparaîtra dans 'Settings': {} Options pour les développeurs
  4. Assurez-vous de vérifier les éléments suivants sous {} Options pour les développeurs:
    • Débogage USB: mode de débogage lorsque USB est connecté (Acceptez la fenêtre contextuelle d'empreinte digitale RSA)
    • Vérifier les applications via USB: vérifiez les applications installées via ADB / ADT pour un comportement nuisible

Essayez de répertorier votre appareil à partir d'appareils ./adb et cela devrait fonctionner.

Réponse tirée de: Toute idée pourquoi adb ne reconnaît pas mon nexus 4 sur mac


43

Si vous avez installé l'application EasyTether, cela peut interférer avec ADB.

Depuis cette page, vous pouvez exécuter la commande:

sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext 

cela déchargera votre extension EasyTether.

Si vous devez réactiver EasyTether pour le partage de connexion, je pense que vous pouvez utiliser:

sudo kextload /System/Library/Extensions/EasyTetherUSBEthernet.kext 

Cela a fonctionné sur mon Samsung Galaxy S2. Il a été nécessaire dans mon cas d'exécuter la commande kextunload à chaque redémarrage.


1
merci pour ça! j'ai oublié que j'ai installé cette merde il y a 3 semaines!
Benoit Jadinon

merci beaucoup ... c'est exactement ce qu'était mon problème
tylerjw

Oui, c'est un problème de maux de tête.après l'installation de easy tether sur mac, l'appareil Android connecté n'est pas affiché dans l'IDE eclipse.Lorsque j'exécute sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext cette commande aussi.Mais rien ne m'aide à comprendre le problème de périphérique connecté ... J'ai également supprimé la connexion réseau EasyTether des Préférences Système.
Android_kalai

Je n'ai jamais installé ce truc EasyTether, mais c'était là, après l'avoir désactivé, cela fonctionnait pour les appareils adb. maintenant, je dois faire fonctionner les appareils de démarrage rapide ...
Cristian

J'ai utilisé EasyTether il y a des années et j'ai oublié que je l'avais laissé installé. Cela a fait l'affaire pour moi.
vincent gravitas

32

Si vous utilisez les appareils suivants:
Samsung S3 GT-I9305 (Android 4.1.2)
Mac OS 10.6.8

Faites ce qui suit:

# echo "0x04e8" >> ~/.android/adb_usb.ini
# adb kill-server
# adb devices

(si vous n'utilisez pas d'appareil Samsung, remplacez l'ID de fournisseur "0x04e8" par la valeur correcte de votre fournisseur)

Si cela ne fonctionne toujours pas, vous pouvez essayer ce qui suit:

(1) Sur votre appareil Samsung, désactivez «Débogage USB» et réactivez-le
(et réessayez les commandes adb)

(2) Déconnectez le câble USB et reconnectez-le

(3) Désinstaller Samsung Kies

(4) Installez Android File Transfer

(5) Redémarrez votre Mac et l'appareil Samsung

(6) Utilisez un périphérique matériel pour tester votre application Android

Après avoir connecté les périphériques mais que vous débranchez soudainement le câble USB, et supposez que les "périphériques adb" ne peuvent plus voir votre périphérique, même après "adb kill-server", dans ce cas, vous pouvez essayer ce qui suit:

(1) éteignez votre Mac
(2) désactivez «Débogage USB» sur votre appareil Samsung
(3) Éteignez votre appareil Samsung
(4) Allumez votre Mac
(5) Allumez votre appareil Samsung
(6) Activez «Déboguer USB» sur votre appareil Samsung
(7) connectez le câble USB
(8) Exécutez "adb devices"
(9) Vous devriez voir le périphérique connecté maintenant


2
J'allais voter pour cette réponse spécifiquement pour le lien vers les fournisseurs, mais le lien tente d'installer des logiciels publicitaires. Je n'ai pas essayé les autres liens, mais je suis sûr qu'ils font les mêmes choses.
Jim Gilmartin

A travaillé pour moi pour une tablette Mediacom S2. La montre Console.app le fournisseur d'identité lors de la connexion du dispositif: 13/02/14 11:17:27,000 kernel[0]: USBMSC Identifier (non-unique): 0123456789ABCDEF 0x2207 0x10 0x222, 2 Le VendorID est, dans ce cas, 0x2207
psychowood

1
Downvoter car le lien vers Android File Transfer est un adware. Utilisez plutôt ce lien: android.com/filetransfer
kand

La dernière procédure en 10 étapes que je recherchais. Je vous remercie!
MaxSC

rien n'a fonctionné pour moi. Je ne trouve toujours pas mon gs7 en mode de récupération
ronaldosantana

27

J'ai eu un problème similaire. J'ai découvert que MTP n'est pas pris en charge dans OSX. Je l'ai changé en PTP, j'ai été promu pour approuver mon ordinateur portable, puis mon appareil a finalement été répertorié (LG G3).

entrez la description de l'image ici


1
LG G2, a dû sélectionner PTP. Merci!
user1112008

1
L'Alcatel OneTouch Idol 3 était par défaut en mode de charge mais m'a induit en erreur avec la notification continue de connexion de débogage USB . J'ai dû faire défiler le commutateur de débogage USB trompeur et activé et ouvrir le menu Sélectionner la configuration USB .
AWrightIV

Cela a fonctionné pour moi - notez que pour accéder à ce menu, vous devrez peut-être activer le débogage USB, puis dans la barre de notifications en haut, appuyez sur la boîte de dialogue de connexion USB et passez de MTP à PTP. Ensuite, vous devriez voir une boîte de dialogue pour accepter la connexion à votre ordinateur.
DiscDev

Même chose! J'ai dû passer Transfer photos (PTP)sur Nexus 5X.
soshial

Pour moi, j'avais besoin de changer "Utiliser USB pour" de ( ) Transferring filesà (*) USB tethering. J'ai accédé à cette option à partir du menu déroulant "notification" sur l'écran principal du téléphone.
kris

25

Croyez-le ou non, l'échange de câbles USB a résolu ce problème pour moi. J'en avais utilisé un aléatoire (qui ne fonctionnait pas), et dès que je suis passé à celui qui était livré avec un appareil Android réel, cela a fonctionné.

Un autre signe que le bon câble fonctionnait, était que l'application Android File Transfer a immédiatement été lancée, ce qui ne se produisait pas avec le câble de merde.


Brancher le câble USB sur un port USB différent peut également résoudre le problème des «périphériques adb» si l'ordinateur cesse parfois de détecter votre appareil.
user908643

3
Cela a fonctionné pour moi aussi. Je ne peux pas croire le temps que j'ai perdu là-dessus ...
bengoesboom

Cela m'est arrivé aussi et je n'ai aucune idée de comment cela fonctionne. Le câble USB est un câble USB - Le chargement fonctionne très bien, pourquoi ADB ne fonctionnerait-il pas? C'est un truc magique de câble plaqué or monstre :(
VitalyB

15

Assurez-vous également que vous n'utilisez pas un câble USB conçu uniquement pour le chargement. Cela m'a juste pris. Et il était en fait étiqueté "pour charger uniquement"


Je ne m'attendais absolument pas à cette solution, mais ouais j'ai changé mon câble USB et il y avait mon appareil ..: /: /
Ajeet Pratap Maurya

Avec une clé USB normale, deux contacts sont utilisés pour les données et deux pour l'alimentation. Les câbles «pour charger uniquement» réduisent probablement les coûts de fabrication en omettant les connexions de données.
mcduffee

Merci, j'avais le même problème. J'utilisais le câble USB vers microUSB d'un chargeur portable en pensant que ce serait un câble standard, mais je suppose que c'était en fait pour charger uniquement. Je l'ai remplacé par un câble USB vers microUSB normal et cela a fonctionné.
Jordanie

12

Dans mon cas, c'était parce que le câble USB.

J'ai découvert qu'il existe deux types de câbles USB:

  • Ceux qui ne fournissent que de l'énergie
  • Ceux qui fournissent de l'énergie et peuvent transférer des données

Et il est difficile de savoir quel type est un câble USB. Maintenant, je fais une encoche sur mes câbles avec transfert de données.


90% du temps, pour moi, c'est le problème. Merci pour les commentaires.
deepelement

11

Cela n'a fonctionné pour moi qu'après avoir activé le débogage USB du développeur sur le téléphone:

Sur votre téléphone Android, accédez à Paramètres> À propos, puis appuyez à plusieurs reprises sur Numéro de build jusqu'à ce que les options de développement soient activées.


3
Cela et en cliquant sur Settings->Developer Options->USB Debuggingsemblent avoir fait l'affaire. J'utilise un AstroTab w / 5.0. Merci!
Gene Bo

C'était LA chose pour moi. Maintenant aussi adb devicesmontré mon Samsung Galaxy A5 2015.
jonashackt

9

NOTE AUX PERSONNES QUI NE PEUVENT OBTENIR L'UN DE CES CONSEILS POUR TRAVAILLER

Essayez de lancer Console.app et surveillez les erreurs lorsque vous branchez votre appareil. Je recevais

# The IOUSBFamily is having trouble enumerating a USB device that has been plugged in. It will keep retrying.

Il a persisté après les redémarrages, donc j'ai finalement réinitialisé ma PRAM et cela l'a fait fonctionner à nouveau.

COMMENT EFFECTUER UNE RÉINITIALISATION DE LA PRAM

  1. Arrêtez complètement votre machine.
  2. Appuyez brièvement sur le bouton d'alimentation
  3. Maintenez la touche Commande + Option + P + R
  4. Attendez jusqu'à ce que vous entendiez le carillon de démarrage pour une troisième fois
  5. Relâchez toutes les touches et laissez la machine continuer à démarrer complètement

J'ai le même problème "IOUSBFamily a du mal à énumérer un périphérique USB". J'ai essayé toutes les solutions possibles, même PRAM RESET. Cela n'a pas fonctionné pour moi: (Une autre suggestion? Tout fonctionnait bien avant et maintenant, soudainement, aucun de mes 3 appareils n'est reconnu. Le chargement est en cours pour les Samsung, pour le Nexus 4 même pas.
nia

JE VOUS REMERCIE ! J'ai essayé les 6 premières réponses et rien n'a fonctionné. En fin de compte, votre solution a très bien fonctionné. Votre solution doit être ajoutée dans la réponse la plus votée.
MaximeBernard

@MaximeBernard - avez-vous également obtenu l'erreur Console.app ou venez-vous de réinitialiser la PRAM?
Vik

8

Voici une autre chose à essayer, si comme moi vous avez essayé toutes les autres réponses et n'avez pas eu de chance.

Dans mon cas (Android 4.3), je suis allé dans les paramètres USB sous les notifications et je suis passé du mode MTP (périphérique multimédia) à PTP (appareil photo) et dès qu'il a basculé, l'appareil est apparu dans la liste des périphériques ADT.


Gareautrain! Merci d'avoir travaillé tout de suite pour mon LG L90 (D415)!
Jacob Pritchett

5

Avec la nouvelle version adb, vous devez supprimer ~/.android/adb_usb.ini


2
rm .android / adb_usb.ini; adb kill-server; périphériques adb
marbdq

5

Changer simplement le câble et autoriser le Mac a fonctionné pour moi!


2
Cela m'est arrivé plusieurs fois et c'était le câble - peut-être juste pour le chargement et non conçu pour le transfert de données
John Tyner

Pareil pour moi; vérifiez le câble.
Lucien Dubois

4

Je rencontrais le même problème et ce qui suit l'a résolu.

  • Assurez-vous que le débogage USB est activé sur votre téléphone.
  • Installer le transfert de fichiers Android
  • Vous recevrez deux notifications sur votre téléphone pour autoriser l'accès de l'ordinateur connecté et une autre pour autoriser l'accès aux médias sur votre appareil. Activez les deux.
  • Votre téléphone sera désormais reconnu si vous saisissez «périphériques adb» dans le terminal.

2
L'ouverture de Android File Transfer a fait le travail pour moi, merci!
crgarridos

3

Juste au cas où cela aiderait quelqu'un dans le futur, j'avais accidentellement désactivé le "débogage USB" dans mes paramètres lorsque j'activais / désactivais "Afficher les limites de mise en page". Alors, vérifiez d'abord ce paramètre dans vos "Options développeur".


J'avais besoin de désactiver cette option, puis de la réactiver pour réparer avec mon mac.
MattD

3

Je suis passé à un autre port USB et cela l'a fait apparaître dans la liste des périphériques adb.

C'est la seule chose qui a fonctionné pour moi de toutes les solutions proposées ici. Elle a été proposée par @ user908643 dans ce commentaire .


3

Une autre chose délicate avec Android moderne est que vous définissez le comportement de l'appareil en sélectionnant «Utiliser pour» de l'appareil.

S'il est défini comme "Utiliser pour" charger par exemple, l'appareil ne sera pas détecté par ADB. le passage à un autre comportement PTP / MTP qui est plus «actif» rendra automatiquement votre appareil détectable.


si je vais aux préférences USB dans les paramètres pour définir PTP, ils sont tous grisés: |
user347187

2

Assurez-vous également de consulter le site Web des fournisseurs pour leurs pilotes «USB». J'ai eu ce problème avec mon AT & T Galaxy Note (exécutant Android 2.3.6) et il n'était pas reconnu par l'adb sans une installation de pilote que j'ai obtenue sur le site Web de Samsung.


2

si vous essayez de détecter un samsung galaxy s3, alors sur le téléphone, accédez aux paramètres -> options de développement -> assurez-vous que le débogage USB est coché


Je suis un développeur Android travaillant quotidiennement avec, entre autres, Galaxy Nexus. D'une manière ou d'une autre, le débogage USB a été désélectionné de lui-même, aucune mise à jour, aucun changement depuis une demi-heure. Je l'ai réactivé et son fonctionnement. Cela m'a donné un indice pour le vérifier, merci.
Nemanja Kovacevic

2

Je devais activer l' USB debugging (Security settings)option développeur en plus USB debuggingdans redmi Note 4 .


Même j'ai dû activer le débogage USB pour Redmi Note 7 pour le faire fonctionner.
Vishal Shetty

1

C'est sacrément étrange mais simplement brancher sur le port USB situé à côté du port Thunderbolt sur mon MBP mi-2014 avec Retina a fonctionné!

L'autre port USB ne reconnaîtrait tout simplement pas l'appareil.



1

Essayez de redémarrer (s'il a déjà été détecté et a cessé de s'afficher) - la mère de toutes les solutions!


1

J'ai essayé tout ce qui précède, la dernière pièce manquante était d'activer le débogage USB dans les options de développement qui était caché sur mon 4.4 Galaxy Note 10.1.

Voir le point 5.2 à partir de ce lien.


Pourriez-vous résumer le lien, au cas où il se romprait?
matsjoyce

1

Aucun des conseils ci-dessus n'a fonctionné pour moi sur ma configuration de Mac OS X Lion. J'ai des téléphones Motorola exécutant 2.3.6. Il s'est avéré que j'avais besoin d'installer des pilotes pour les téléphones Motorola. Je les ai trouvés ici .


1

Aucune des réponses ci-dessus n'a fonctionné pour moi. Sur macOS Mojave, ouvrez l'application console, vous pouvez voir une erreur comme celle-ci:

001076.240057 adb@(null): IOUSBUserClientLegacy::start: missing entitlement com.apple.appledfr.client

Même la réinitialisation du mac PFRAM n'a pas aidé. Pour résoudre ce problème:

  1. Connectez l'appareil Android via un câble USB (le double câble USB-C a fonctionné pour moi).

  2. Allez dans Paramètres -> .. -> Options du développeur et cliquez sur Révoquer les autorisations de débogage USB

  3. Le téléphone Android effectuera un redémarrage.

  4. Allez dans Paramètres -> .. -> Options du développeur et assurez-vous que le débogage USB est activé.

  5. Maintenant, dans le terminal macOS, entrez:

    adb devices
  6. Vous pouvez voir votre appareil répertorié.

Cela a fonctionné pour mon téléphone Google Pixel 2.


proche d'être la même chose pour moi, mais de cette façon que vous avez décrite aide de temps en temps, aide parfois à changer la prise USB, mais éventuellement, elle se bloque et ne voit pas mon appareil constamment jusqu'au redémarrage du mac. Avez-vous compris ce qui se passe réellement?
busylee

0

J'ai eu un temps fou avec ça.

J'ai essayé cette méthode mais cela n'a pas fonctionné. J'ai fini par désactiver le débogage USB et l'appareil a ensuite demandé l'installation de motocast .

Il a tenté d'utiliser le programme d'installation intégré, mais il a continué à planter après le téléchargement. Après l'avoir téléchargé manuellement et installé, j'ai pu le faire.

J'utilise 10.6.8 et l'appareil est un Xoom 2 exécutant 3.2.2

Après cette installation, cela a bien fonctionné.


0

Au cas où, comme moi, rien de ce qui précède n'a fonctionné pour vous, j'ai trouvé une solution très stupide.

J'utilise un HTC One X sur un Macbook Pro 2011. Je viens de désactiver NFC dans Paramètres> Sans fil et réseaux> Plus> NFC et alto! Fonctionne normalement.


0

J'ai vu ce problème et essayé toutes les solutions sur stackoverflow et d'autres sites, mais rien ne m'aide.

J'ai redémarré adb, en passant en mode développeur et en activant le débogage USB, en désinstallant samsung kies et même en échangeant les câbles USB vers différents ports.

Mais ensuite, j'ai lu quelque part que différents câbles USB utilisent des broches différentes pour se connecter à l'ordinateur portable ou à l'ordinateur. J'ai
donc utilisé un câble USB différent pour connecter mon téléphone Samsung à mac .. et vowwww cela fonctionne ... pour moi ......


0

Dans mon cas, le débogage USB n'était pas activé sur mon appareil, mais la connexion de l'appareil à mon macbook n'a pas fait apparaître la boîte de dialogue familière «Autoriser le débogage USB» à l'écran.


Pour toute personne ayant ce problème (comme je l'ai été au cours des dernières heures), tout ce que vous avez à faire est de suivre les instructions du site ci-dessous eltima.com/wiki/user-guides/syncmate/usb-debugging-android.html Les instructions vont jusqu'à la v4.0 d'Android. J'ai parcouru Internet, en recherchant "Android ne peut pas se connecter à Mac" et ainsi de suite avec toutes les solutions demandant d'activer le mode de débogage USB, mais aucune n'indiquant comment accéder à cette option. Après 3 applications et 5 installations plus tard, je trouve ce site Web à cause d'une application appelée SyncMate. Je vais me détendre et profiter de Noël maintenant.
Fluffy Sebbert
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.