Nexus 7 не отображается через USB через "устройства adb" из Windows 7 x64

Я сделал очевидное: драйвер USB был установлен с последнего Android SDK, а USB-отладка была включена в планшете.

Когда подключен Nexus 7, устройство появляется в Windows Диспетчер устройств в качестве "Android Phone" / "Android Composite ADB Device" со свойствами, отображающими версию драйвера 6.0.0.0, поэтому правильный драйвер установлен и работает.

Это также доказывает, что устройство находится в режиме отладки USB, потому что если оно не отображается в Windows в разделе "Переносные устройства" / "Nexus 7".

Проблема заключается в том, что "устройства adb" не показывают никаких устройств, а Eclipse также (не удивительно) также не предлагает Nexus 7 как аппаратное устройство для запуска приложения.

Я перезагрузил оба устройства без эффекта.

Единственная отладка, которую я могу выяснить, это включить ADB_TRACE=all, но это ничего мне не говорит:

[email protected] ~/AppData/Local/Android/android-sdk/platform-tools
$ export ADB_TRACE=all

[email protected] ~/AppData/Local/Android/android-sdk/platform-tools
$ adb devices
system/core/adb/adb.c::main():Handling commandline()
system/core/adb/adb_client.c::adb_query():adb_query: host:devices
system/core/adb/adb_client.c::_adb_connect():_adb_connect: host:version
system/core/adb/sysdeps_win32.c::socket_loopback_client():socket_loopback_client: port 5037 type tcp => fd 100
system/core/adb/transport.c::writex():writex: fd=100 len=4: 30303063 000c
system/core/adb/transport.c::writex():writex: fd=100 len=12: 686f73743a76657273696f6e host:version
system/core/adb/transport.c::readx():readx: fd=100 wanted=4
system/core/adb/transport.c::readx():readx: fd=100 wanted=4 got=4
4f4b4159 OKAY
system/core/adb/adb_client.c::_adb_connect():_adb_connect: return fd 100
system/core/adb/adb_client.c::adb_connect():adb_connect: service host:devices
system/core/adb/transport.c::readx():readx: fd=100 wanted=4
system/core/adb/transport.c::readx():readx: fd=100 wanted=4 got=4
30303034 0004
system/core/adb/transport.c::readx():readx: fd=100 wanted=4
system/core/adb/transport.c::readx():readx: fd=100 wanted=4 got=4
30303164 001d
system/core/adb/sysdeps_win32.c::adb_close():adb_close: 100(lo-client:5037)
system/core/adb/adb_client.c::_adb_connect():_adb_connect: host:devices
system/core/adb/sysdeps_win32.c::socket_loopback_client():socket_loopback_client: port 5037 type tcp => fd 101
system/core/adb/transport.c::writex():writex: fd=101 len=4: 30303063 000c
system/core/adb/transport.c::writex():writex: fd=101 len=12: 686f73743a64657669636573 host:devices
system/core/adb/transport.c::readx():readx: fd=101 wanted=4
system/core/adb/transport.c::readx():readx: fd=101 wanted=4 got=4
4f4b4159 OKAY
system/core/adb/adb_client.c::_adb_connect():_adb_connect: return fd 101
system/core/adb/adb_client.c::adb_connect():adb_connect: return fd 101
system/core/adb/transport.c::readx():readx: fd=101 wanted=4
system/core/adb/transport.c::readx():readx: fd=101 wanted=4 got=4
30303030 0000
system/core/adb/transport.c::readx():readx: fd=101 wanted=0
system/core/adb/transport.c::readx():readx: fd=101 wanted=0 got=0

system/core/adb/sysdeps_win32.c::adb_close():adb_close: 101(lo-client:5037)
List of devices attached
***NOTHING SHOWN*****

Что я делаю неправильно?

Ответ 1

При подключении Nexus 7 появляется постоянное уведомление, указывающее " CONNECT AS/Media Device (MTP)". В этом состоянии adb devices не будет отображаться Nexus или, несомненно, любое другое устройство. Не совсем очевидно, но если вы выберете второй вариант "Камера (PTP)", устройство доступно для отладки (урок игнорирует камеру и фокусируется на протоколе PTP).

Эта конфигурация постоянна, и я предполагаю, что с совершенно новым устройством она будет подключаться как MTP, пока не будет сказано иначе.

Благодаря @Ciaran Gallagher Settings --> Storage --> Top Left Option (Computer USB Connection) tap--> choose MTP

Ответ 2

Отправляйте сообщение в блоге Nexus 7 Android development, в котором подробно описаны шаги.

Ответ 3

В дополнение к настройке подключения USB/режима хранения к "Camera (PTP)", мне также пришлось включить режим разработчика, который был скрыт с 4.2.

  • Перейдите в меню "Настройки" и прокрутите вниз до "О телефоне/планшете". Нажмите его.
  • Снова прокрутите страницу вниз, где вы увидите "Номер сборки".
  • Нажмите на него семь (7) раз. После третьего нажатия вы увидите игривое диалоговое окно, в котором говорится, что вы в четыре раза отстаете от разработчика. Продолжайте нажимать, и у вас есть настройки разработчика.
  • Теперь в разделе "Настройки" есть "Параметры разработчика". Нажмите его.
  • Нажмите "Отладка USB", чтобы включить его.

Источник: Как включить настройки разработчика на Android 4.2

Ответ 4

Чтобы установить/установить драйвер USB для Android на Windows 7/8 32bit/64bit:

  • Подключите устройство Android на USB-порт вашего компьютера.
  • Щелкните правой кнопкой мыши на компьютере со своего рабочего стола или проводника Windows и выберите Управление.
  • Выберите "Устройства" в левой панели.
  • Найдите и разверните другое устройство в правой панели.
  • Щелкните правой кнопкой мыши имя устройства (Nexus 7/ Nexus 5/ Nexus 4) и выберите Обновить Программное обеспечение драйвера. Это запустит мастер обновления оборудования.
  • Выберите Обзор моего компьютера для программного обеспечения драйвера и нажмите "Далее".
  • Нажмите Обзор и найдите папку драйвера USB. (Google USB Драйвер находится в <sdk>\extras\google\usb_driver\.)
  • Нажмите Далее, чтобы установить драйвер.

Если он по-прежнему не работает, попробуйте перейти от MTP к PTP.

MTP -> PTP

Ответ 5

Я обнаружил, что вы также можете использовать Device Manager → Update Driver Software → Обзор моего компьютера для программного обеспечения для драйверов → Позвольте мне выбрать из списка драйверов устройств на моем компьютере → Android Phone → [драйвер ADB версии 6 в верхней части списка... извините, я не помню точное имя]

Как только я это сделал, он подключился, и я смог отключить версию 4.2 на Windows 7 64 бит.

Ответ 6

Я использую Nexus 7 (4.2) для Windows 7 x64. Ни один из других методов, описанных здесь, не работал у меня. Вкладка уже была в режиме PTP. Наконец, я мог бы заставить его работать, когда я добавил строку ниже в 'android_winusb.inf' под < android-sdk > \extras\google\usb_driver и сделал "драйвер обновления":

%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E44&REV_9999&MI_01

Чтобы получить точный идентификатор аппаратного обеспечения (USB\VID_18D1 и PID_4E44 и REV_9999 и MI_01 в моем случае), вы можете перейти в Управление компьютером → Диспетчер устройств → вкладка "Сведения" → выберите "Идентификатор оборудования" в раскрывающемся списке.

Ответ 7

У меня была аналогичная проблема и я попробовал другие предложения.

Использование драйвера PdaNet при загрузке из http://www.junefabrics.com/android/download.php - это то, что в конечном итоге выполнило эту работу и позволило мне, наконец, подключиться через ADB. До установки драйвера здесь я не смог распознать свой Nexus, чтобы отключить новый Android 4.2 на своем устройстве.

Я использую 64-разрядную версию Windows 7 с моим Nexus 7.

Ответ 8

Попробуйте это. Если ваше устройство не обнаружено, используйте PdaNet. Вы можете скачать его из здесь. Загрузите его и установите на свой компьютер. Подключите телефон. Он автоматически обнаруживает драйвер из Интернета.

Ответ 9

У меня были схожие проблемы, и я обнаружил, что снятие всех параметров (как MTP, так и PTP) позволило устройству получить отпечаток RSA с моего компьютера, и после этого работала "adb devices".

Имейте в виду, что отпечаток RSA должен быть принят до того, как устройство Android 4.2+ может подключаться через ADB, это очевидно из соображений безопасности.

Ответ 10

Драйвер PDANet был единственным решением для меня успешно подключиться к Google Galaxy Nexus 4.2.1 на Windows 7 x64, который отклонял/игнорировал официальные USB-драйверы с последней версии 4.2 ADK (версия 7) - http://junefabrics.com/android/index.php

Ответ 11

В моем случае у меня было две проблемы:

  • Мой компьютер получил предыдущий драйвер Samsung Galaxy II и назначил его моему Nexus 7. Мне нужно было удалить его много раз. Наконец, я смог связать правильный драйвер Nexus 7.

  • Необходимость установки опции PTP.

Ответ 12

У меня также есть 64-разрядная версия Nexus 7 и Windows 7, и у меня работает ADB, спотыкаясь об этом в этой теме, а другие около месяца назад. Затем он прекратил работать. Единственное, что я помню раньше, - это Windows, устанавливающая некоторые драйверы Bluetooth при запуске (у меня нет устройств Bluetooth).

На этот раз я барахтался на целый день. Теперь он снова работает! Последнее, что я сделал, это использовать диспетчер устройств для "отключения" устройства и перезагрузки.

Ответ 13

У меня был установлен драйвер HTC One, и я подумал, что это причина того, что он не работает. Однако выяснилось, что причиной я был отключен как MTP/PTP.

Я не нашел места для настроек, но затем нашел Как настроить USB на вашем Nexus 7.

Это довольно запутанно для меня, оно находится на вкладке "Хранение". Для меня работает MTP или PTP.

Ответ 14

Другой вариант - если обновления Windows полностью отключены на вашем ПК. В этом случае, даже если вы загрузите USB-драйвер и попробуйте обновить его вручную, как описано выше, он не будет работать. Единственный способ в этом случае - автоматическое обновление драйверов Windows. После того, как вы включили это, удалите неработающий драйвер из диспетчера устройств и подключите планшет к ПК через USB-кабель. Драйверы будут автоматически загружены и установлены Windows. Этот способ работал на моем ПК с Windows 7.

Ответ 15

Я нахожусь в Win 7 64-bit, и я вижу, что большинство людей с той же проблемой здесь также находятся на 64-битной версии. Чтобы исключить аппаратное обеспечение и ОС, я использовал VMware для запуска 32-разрядной версии Win 7 на том же ПК. За исключением необходимости редактировать файл .inf с правильным VID/PID, все остальное отлично сочеталось с 32-битной версией Win 7, что говорит о том, что ПК в порядке, а 32-разрядная версия Win 7 тоже прекрасна.

Возвращаясь к моей 64-битной Win 7, ни один из вышеперечисленных предложений не работал у меня. Однако я заметил одно: ADB устанавливается в Program Files (x86), но установщик драйверов устанавливает 64-разрядную версию. Win 7 64-бит распознает Nexus 7 как интерфейс Android Composite ADB, но ADB не обнаруживает его.

Так есть где-то 64-битная версия ADB? если моя установка находится под (x86) на 64-разрядной версии Win 7, значит ли это, что я испортил установку где-то.

Будет ли проблема связана с драйверами USB, установленными 64-разрядными, но ADB 32-разрядный?

Еще одна проблема, которую я заметил, когда драйвер USB Nexus 7 установлен в свойствах, я вижу только интерфейс Android Composite ADB для функций устройства. В Win 7 32-битные свойства показывают 3 функции устройства.

Win 7 64bWin 7 32b

похоже, что проблема в USB-драйвере еще не решена.

Ответ 17

Решение, которое, по-видимому, исправило это для меня, поверх PTP, не выбирает Always allow from this computer при разрешении USB-отладки. Отмена авторизации и прием вручную при каждом подключении устройства исправлены для меня. (Settings -> Developer options -> Revoke USB debugging authorisations)

Ответ 18

Для тех из вас, кто с Nexus 5x, который видит только Kedacom usb device в диспетчере устройств и не может получить adb, чтобы увидеть телефон... трюк - это Update driver... на устройстве Kedacom и изменить его на интерфейс Android ADB/устройство "