Как я могу заставить оболочку Ubuntu в Windows 10 распознавать подключенное устройство на базе Android?

Я пытаюсь подключить adb к своему устройству на базе Android в оболочке Windows 10 Ubuntu, но это, кажется, не работает:

Waiting for Device in Ubuntu Bash Shell

adb действительно обычно работает над Windows, таким образом, это не проблема с телефоном или соединением. Я должен сделать что-то, любят, монтируют порт в оболочке Ubuntu? Как? (Цель состоит в том, чтобы передать logcat кому: grep, который, очевидно, работал бы лучше в Ubuntu.)

7
задан 22 June 2018 в 13:28

4 ответа

Оболочка удара в соответствии с Windows не имеет функций для соединения с USB-устройствами. Таким образом, ADB не собирается работать, пока кто-то не добавляет это.

Вот предложение по добавлению поддержки USB .

4
ответ дан 23 November 2019 в 06:21

Существует хитрый способ заставить его работать даже с текущими ограничениями. Необходимо запустить adb сервер с cmd:

adb kill-server //if it is already running under bash shell
adb start-server

, Чем Вы может назвать adb от оболочки удара, он будет использовать существующий сервер и поскольку результат сможет перечислить подключенные устройства.

adb devices
5
ответ дан 23 November 2019 в 06:21

Добавляя на другой ответ Paul , можно получить доступ к Windows adb сервер из Ubuntu для разрешения этого, но это работает, если и только если два adb двоичных файла используют ту же версию протокола TCP. Например, adb 7.0.0+r33-2 в Бионическом будет работать с инструментами платформы 24.0.4 в Windows.

, Если у Вас есть другая версия, мой первый шаг просто выполнял adb в Windows, как он предполагает:

> adb kill-server //if it is already running under bash shell
> adb start-server

И затем в Ubuntu:

$ adb devices

, Если версии протокола двоичной синхронной передачи данных не сочетаются, то после выполнения adb в Ubuntu ошибка производится, который дает достаточно информации для получения правильного двоичного файла:

adb server version (40) doesn't match this client (36); killing...

В этом примере, сервер использует версию протокола 40, и пакет Ubuntu использует версию 36. Так, один подход должен получить версию adb в Windows, который является 4 главными версиями ранее, чем та, которую Вы имеете. Можно рассмотреть эти информация о версии инструментов платформы для нахождения последней вспомогательной версии необходимой основной версии. Во время этой записи номер основной версии инструментов платформы равняется 12 ниже, чем количество версии протокола adb, таким образом, для версии протокола 36 как в этом примере, мы хотели бы версию 24.0.4 инструментов платформы (который равняется 4 меньше чем 28.0.1, которые имели версию протокола 40). Этот номер версии может использоваться для изготовления вручную URL загрузки для инструментов платформы необходимой версии.

https://dl.google.com/android/repository/platform-tools_r24.0.4-windows.zip
                         change to correct version here----^

Загрузка и распаковывает этот архив и повторно выполняет adb от cmd:

> adb kill-server
> adb start-server

Теперь adb будет работать из Ubuntu.

3
ответ дан 23 November 2019 в 06:21
  1. sudo vim /etc/profile, затем добавьте следующие строки (fastboot необязательно) и сохраните, замените пути adb и fastboot на ваши фактические пути, обратите внимание на перевод папок с пробелами в пути.

    export PATH=$PATH:/mnt/c/Program\ Files/platform-tools_r30.0.3-windows/platform-tools/

    псевдоним adb='/mnt/c/Program\ Files/platform-tools_r30. 0.3-windows/platform-tools/adb.exe'

    alias fastboot='/mnt/c/Program\ Files/platform-tools_r30.0.3-windows/platform-tools/fastboot.exe'

  2. источник /etc /profile

  3. Посмотрите, что получилось.

0
ответ дан 15 July 2020 в 06:28

Другие вопросы по тегам:

Похожие вопросы: