фастбут работает, адб нет

Я взял подержанное устройство Motorola Moto G (2-го поколения). Модель технически XT1064 (Titan).

На моем компьютере с Windows я иногда вижу сообщение об ошибке, когда я выключаю телефон, в котором говорится, что USB-устройство не распознано (сбой запроса дескриптора устройства).

После нескольких дней попыток он еще не появился в adb. Но он отлично работает, если я загружаюсь в загрузчик и запускаю fastbootкоманды!

Я пробовал все «простые» вещи, которые люди рекомендуют:

  • включение отладки по USB в параметрах разработчика
  • разные USB-кабели (хотя, поскольку fastbootработает нормально, это означает, что кабель тоже в порядке)
  • разные компьютеры (пробовали Mac, компьютер с Windows 10 и ноутбук с Windows Vista)
  • adb kill-serverс последующимadb devices
  • различные adbверсии (инструменты платформы Android SDK и универсальный драйвер ADB)
  • удаление драйверов Windows вручную
  • принудительно установить драйверы (не работает, поскольку устройство не проходит запрос дескриптора устройства, поэтому Windows не разрешает установку драйверов)
  • установка универсального драйвера ADB
  • перепрошивка устройства (пробовал стоковый Marshmallow, стоковый KitKat и Lineage OS)

Я разочарован процессом, потому что fastbootработает просто отлично. Вот как я прошил туда отдельные ПЗУ.

Если бы это была аппаратная проблема с USB, почему он fastbootработает правильно, но adbне работает?

Кроме того, если это аппаратная проблема, какая физическая часть может быть проблемой? Маловероятно, что это сам USB-порт (опять же, потому что fastbootработает нормально). Есть ли в телефоне какой-то USB-контроллер, который может быть проблемой? Поскольку устройство для меня довольно бесполезно, если оно не adbработает, я бы подумал о том, чтобы попытаться припаять новую часть, чтобы решить проблему, если бы я мог!

Ответы (3)

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

  • Убедитесь, что и ПК, и Android-устройство находятся в одной сети.
  • На Android установите эмулятор терминала
  • Откройте эмулятор терминала и введите следующее:

su
setprop service.adb.tcp.port 5555
stop adbd
start adbd

  • На стороне ПК введите:

adb connect 192.168.1.2

(замените 192.168.1.2 на IP-адрес вашего устройства)

  • Продолжайте с adb, как если бы он был подключен через USB

Кроме того, вы можете создать сценарий с помощью GScript вместо использования эмулятора терминала.
Также вы можете добавить эти строки в свои скрипты загрузки Android, и в этом случае вам не придется делать это каждый раз вручную.

Это на самом деле именно то, что я в конечном итоге сделал! Мне не нужно было рутировать устройство — я просто установил LineageOS, и он поддерживал его прямо из коробки. Я просто пользуюсь adb connectи все работает нормально. Хотя это отличный обходной путь , я не уверен, что это решение проблемы. Но это определенно то, что я сделал, поэтому я проголосовал за вас. Спасибо за отличное предложение!

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

Чтобы включить, выполните следующие действия:

  1. Открыть настройки
  2. ОткрытьInfo
  3. Найдите Build Numberи нажмите на него много раз, пока он не скажетYou are now a developer!
  4. ВыходInfo
  5. ОткрытьDeveloper options
  6. Нажать наUSB debugging
  7. Нажать наOK

Примечания:

  • В 4.1.x и ранее пропустите шаги 2-4
  • В версии 2.2.x и ранее goto Settings-> Applications-> Development->USB debugging
Извините, я должен был добавить это в список вещей, которые я пробовал :). Не работает!
@aardvarkk все в порядке, я бы прокомментировал, спросив, есть ли у вас, просто чтобы убедиться, но я пока не могу комментировать, поэтому ... я ответил об этом
@aardvarkk, вы пробовали драйверы Windows по умолчанию для устройства?
Да, я установил драйвера от оригинального производителя. Но я думаю, что это более глубокая проблема, так как устройство даже не пытается использовать драйверы — оно терпит неудачу в запросе дескриптора устройства.
Я не имею в виду те, которые вы загружаете, те, которые Windows устанавливает сама
О, да, они определенно не работают. Windows даже не пытается установить драйвер. На самом деле даже не выводит сообщение, когда я подключаю его. Я предполагаю, что это происходит так рано при идентификации устройства.
@aardvarkk, даже в Висте?

фастбут работает, а адб нет? мой ответ: вы можете использовать загрузчик изображений, совместимый с этим устройством, стереть все предыдущие данные и заново создать новые метаданные, включив разбиение на разделы, после успеха вы можете получить ожидаемый результат, например, успех сглаживания (связанный со сборкой этого устройства). тогда adb будет нормально работать с обнаружением порта usb.

надеется, что это работает!