Подтвердить что ты не робот

Не удается найти устройство Android с помощью команды "adb devices"

Я разрабатываю приложение Android на macOS, и мое приложение хорошо работает на эмуляторе. Я хочу запустить его на устройстве, но когда я запускаю adb devices, я ничего не получаю.

localhost:platform-tools BF$ adb devices 
List of devices attached 

localhost:platform-tools BF$

Я проверил документацию в ссылке "Настройка устройства для разработки". Я сделал все шаг за шагом.

В документации есть несколько слов: Настройка вашей системы для обнаружения вашего устройства. Если вы разрабатываете Mac OS X, это просто работает. Пропустите этот шаг.

Теперь я не могу найти решение. Нужны ли специальные драйверы для Android-устройств?

4b9b3361

Ответ 1

Я знаю, что эта ветка старая, но я думаю, что это все еще может помочь. Почти все время "это просто работает" в OS X, но иногда новые/прототипные или неизвестные устройства не обнаруживаются. Попытайтесь помочь с этими шагами (я не около моего Mac прямо сейчас, но я сделал это прошлой ночью и думаю, что я помню):

  1. Откройте System Profiler и найдите устройство по USB. Посмотрите детали, чтобы найти идентификатор поставщика. Например, устройства Motorola будут показывать 0x2bb8. Или просто Google для идентификатора вашего поставщика оборудования.

    Если ничего не показано, обязательно попробуйте другие кабели. Передача файлов Android удобна для обнаружения устройства, если у вас есть действующий кабель.

  2. Отредактируйте ~/.android/adb_usb.ini, чтобы включить этот идентификатор поставщика. Если файл не существует, создайте его только с этой строкой.

  3. Перезапустите АБР

    adb kill-server 
    adb start-server
    
  4. Возможно, отключите/подключите телефон.

И, надеюсь, вы видите свое устройство.

Ответ 2

Вы случайно используете приложение EasyTether при подключении к вашему Mac? Если вы используете это приложение, вам повезло, потому что решение должно вызвать:

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

с терминала. Я забыл, если вам нужно перезагрузиться или нет.

Это отключит привязку, но теперь вы можете увидеть свое устройство через adb.

Чтобы обновить привязку после завершения отладки, используйте

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

Конечно, если вы не используете EasyTether, то, надеюсь, у кого-то есть идея....

Ответ 3

Такая же проблема. osx 10.6.6 и устройства adb, дающие $./adb устройства Список подключенных устройств ... пустой....

Перезагрузка телефона не помогла, хотя она была указана с устройствами adb только на секунду во время загрузки.

Отладка была включена в adroidsettings- > applications

Что, в конце концов, сделало отметку: отключить и снова включить режим отладки.

Ответ 4

Если вы боретесь с такой проблемой, используя Lollipop (Android 5. *), вероятно, вы, ребята, должны сделать один простой шаг, который я сделал до того, как мой ADB (я использую Ubuntu) получил свой телефон:

Измените тип подключения USB-ПК на "Отправить изображения (PTP)" (до того, как я использовал "Медиа-устройство (MTP)" )

Точно так же:

Screenshot

И не забудьте активировать флажок "Отладка USB".

Ответ 5

У меня была эта проблема сегодня, когда телефон заряжался при подключении, но Mac не видел. Оказалось, что кабель micro USB, который я использовал, предназначался только для зарядки и не делал данных. Как только я сменил USB-кабель, он начал нормально работать.

Ответ 6

Ссылка на эту ссылку!

ЭТО ТОЛЬКО ДЛЯ МАСЛА!

Вот что вам нужно сделать, чтобы сделать ваш телефон видимым для adb:

  • Открытый терминал (Приложения/Утилиты/Терминал)
  • cd /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/IOUSBCompositeDriver.kext/Contents
  • sudo nano Info.plist (или vi, или emacs, или любой другой редактор консоли, который вы предпочитаете)
  • Скопируйте раздел IOUSBComposite (от <key> до </dict>)
  • Вставьте раздел в строку 66 (сразу после его появления), так что у вас есть 2 копии в файле
  • Измените значение bDeviceSubClass от 0 до 2
  • Измените имя ключа с IOUSBComposite на GW620

Конечный результат должен выглядеть примерно так:

                    <key>GW620</key>
                    <dict>
                            <key>CFBundleIdentifier</key>
                            <string>com.apple.driver.AppleUSBComposite</string>
                            <key>IOClass</key>
                            <string>IOUSBCompositeDriver</string>
                            <key>IOProviderClass</key>
                            <string>IOUSBDevice</string>
                            <key>bDeviceClass</key>
                            <integer>0</integer>
                            <key>bDeviceSubClass</key>
                            <integer>2</integer>
                    </dict>

  1. sudo diskutil repairpermissions / и завершить его
  2. sudo touch /System/Library/Extensions и подождите несколько минут, чтобы переиндексировать расширение, чтобы завершить
  3. adb devices должен теперь видеть ваш телефон

Обратите внимание, что это ОЧЕНЬ kludgy, и, вероятно, будет ломаться каждый раз, когда OSX обновляет себя, но он работает. Я могу, наконец, перестать перезагружаться каждый раз, когда хочу работать на телефоне!: D

Ответ 7

Если adb devices не отображает устройство, хотя вы подключили его к системе, вам необходимо убедиться, что опция USB debugging отмечена на вкладке Developer Options в разделе Settings. В Android 4.2.2 и выше (из того, что я наблюдал), Developer Options скрыты, если явно не указано. Чтобы сделать Developer Options активным, коснитесь 7 раз на Settings > About device > Build number. После этого вернитесь к Settings > Developer Options и активируйте USB debugging.

Используя adb version 1.0.31, я смог сделать устройство видимым.

Ответ 8

У меня была эта проблема. Оказывается, мое исправление заключается в замене кабеля USB, с которым я связывался. Я переключился на использование кабеля, который пришел с телефоном, и он сработал.

Использование Samsung Galaxy Player и Samsung micro USB.

Да. Это невероятно глупо.

Ответ 9

Если вы используете устройства adb в Mac OS X, устройство не отображает и, конечно же, вы включили USB-отладку на вашем устройстве (см. http://developer.android.com/tools/device.html), затем попробуйте:

$ android update adb
adb has been updated. You must restart adb with the following commands
    adb kill-server
    adb start-server

Тогда:

$ adb kill-server
$ adb start-server
* daemon not running. starting it now on port ... *
* daemon started successfully *

И наконец:

$ adb devices
List of devices attached 
......  device

Ваше устройство должно быть в списке.

Ответ 10

В Mac Lion:

Мне просто нужно было перейти на /path/to/android-sdk/tools и запустить android adb update для устройств, которые будут обнаружены.

Ответ 11

убедитесь, что у вас есть один и тот же уровень API более высокого уровня, установленный на SDK-пакетах с вашими устройствами.

пример:

У меня Android 2.3.4 на моей Xperia Play. ADB не обнаружит мое устройство, если на моем Mac установлен только API 10 (Android 2.3.3). Когда я установил SDK 11 (Android 3.0), поскольку я не нашел SDK-пакета для 2.3.4, ADB работает нормально.

надеюсь, что это поможет вам.

Ответ 12

Вам понадобится USB-драйвер, установленный правильно и включенный в настройках отладки. если они не работают, может быть что-то не так с вашим устройством.

Также см. это.

Ответ 13

перезагрузка сервера adb работает для меня, в эмуляторе, vmwware и virtual

adb kill-server
adb start-server

, если вы используете виртуальную машину, убедитесь, что у вас установлен IP-адрес:

Alt + 1
type: netcfg

чтобы вернуться:

Alt + 7

если у вас есть:

 eth0: DOWN 0.0.0.0/XX

измените конфигурацию на:

NAT or BRIDGE

Перезагрузите виртуальную машину и сервер и повторите попытку.

, если вы используете телефон или планшет:

  • отключите устройство от сети

  • подождите немного и снова подключите его

  • и перезапустите сервер adb

Надеюсь, что эта помощь вам поможет.

Ответ 14

Та же проблема, что и у Windows 7. Случилось так, что я использовал функцию привязки USB вместе с попыткой использовать adb. Есть несколько способов обхода этого Usb троса и отладки в то же время

Ответ 15

То, что ваше Android-устройство находится в режиме разработчика, не означает, что на нем включена отладка по USB!! Зайдите в "Настройки"> "Параметры разработчика", затем включите "Отладку по USB", после чего вы должны увидеть свое устройство. Это распространенная ошибка, которую легко не заметить.

Ответ 16

Я установил Xamarin и попытался использовать Unity. В принципе, в любом случае вам нужно убить любое приложение, которое может разговаривать с вашим устройством через ADB