Я пытаюсь отладить приложение на Motorola Droid, но у меня возникли трудности с подключением к устройству через USB. Мой сервер разработки - это Windows 7 64-разрядная виртуальная машина, запущенная в Hyper-V, и поэтому я не могу подключиться напрямую через USB в гостевой системе или с хоста.
Я установил несколько различных решений USB-over-TCP, но соединение, похоже, имеет проблемы, поскольку монитор ADB неоднократно сообщает "devicemonitor failed to start monitoring". Есть ли способ подключиться напрямую от клиента на машине разработчика к демону на устройстве, используя сеть вместо USB-соединения, или, возможно, другие жизнеспособные варианты?
Процесс Инструкция ##
По данным пост на XDA-разработчиков, Вы можете включить АБР по Wi-Fi с устройства с помощью команд:
su
setprop service.adb.tcp.port 5555
stop adbd
start adbd
И вы можете отключить ее и вернуть ADB для прослушивания на USB с
setprop service.adb.tcp.port -1
stop adbd
start adbd
Это даже легче переключиться на использование Wi-Fi, если у вас уже есть USB. Из командной строки на компьютере с устройства, подключенного через USB, выдает команды
adb tcpip 5555
adb connect 192.168.0.101:5555
Будьте уверены, чтобы заменить 192.168.0.101
с IP-адреса, который назначен на устройстве. Как только вы закончите, вы можете отключиться от TCP-сессии АБР, выполнив:
adb disconnect 192.168.0.101:5555
Вы можете найти IP-адрес планшета в двух вариантах:
Руководство IP обнаружения:
Перейти в Android'параметры s беспроводной доступ в интернет, нажмите кнопку Меню на панели действий (вертикальное троеточие), нажмите Дополнительно и увидеть IP-адрес в нижней части экрана.
Использовать АБР, чтобы узнать IP:
Выполните следующую команду через ADB:
adb shell ip -f inet addr show wlan0
Сказать АБР демон вернуться к прослушиванию через USB
adb usb
Также есть несколько приложения на Google Плей, что автоматизировать этот процесс. Быстрый поиск предлагает adbWireless, WiFi АБР и АБР беспроводной доступ в интернет. Все это требует корневого доступа, но adbWireless требуется меньше разрешений.
Это действительно просто, если ваш телефон коренится.
Скачать эмулятор терминала с Google играть (там много что бесплатно). Убедитесь, что ваш Android устройство подключено к вашей Wi-Fi и получить бесплатный Wi-Fi Интернет IP-адрес. Откройте программу терминал и введите:
su
setprop service.adb.tcp.port 5555
stop adbd
start adbd
Теперь переходим к компьютеру (предполагая, что вы используете Windows) и создать ярлык на рабочем столе "по УМК.ехе и" (без кавычек).
Щелкните правой кнопкой мыши по ярлыку cmd и выберите"и запуск от имени администратора"`в
Изменение вашего андроид-СДК-папку Windows\инструментов
Тип:
adb connect ***wifi.ip.address***:5555
(example: adb connect 192.168.0.105:5555)
АБР должен теперь сказать, что вы связаны.
Примечание: Если вы слишком быстро, чтобы дать команду подключить его может не. Поэтому постарайтесь хотя бы два раза по пять секунд, прежде чем вы говорите, Это't работа.
АБР tcpip 5555
АБР подключения
Отключите USB и продолжить беспроводной отладки.
Когда вы'повторно делать и хотите переключиться обратно в режим USB отладки, выполните:
АБР -ы
Чтобы найти IP-адрес вашего устройства, зайдите в Настройки > Есть Wi-Fi Интернет и GT; дополнительно > IP-адрес на вашем устройстве или запустить АБР оболочки в netcfg
.
Нет корень требуется. Только одно устройство может быть отлажена в то время.
См. этом XDA пост.
Команда АБР
находится в `платформа-Tools папку из SDK для Android.
Предположим, вы сохранили путь АБР на вашем пути среде Windows
Включение режима отладки в Android
Подключение к ПК через USB
Откройте командную строку типа: "АБР tcpip 5555"
Отключите ваш планшет или смартфон от ПК
Откройте командную строку типа: АБР подключения IP-адреса
(IP-адрес-DHCP-сервер/IP-адрес вашего планшета или смартфона, который вы можете найти по Wi-Fi Интернет -> В текущей подключенной сети)
Теперь в командной строке вы должны увидеть результат, как: подключение к ХХХ.ХХХ.ХХХ.ХХХ:5555
Из adb --help
:
connect <host>:<port> - Connect to a device via TCP/IP
Это, кстати, опция командной строки.
Вы должны попробовать подключить телефон к Wi-Fi, а затем получить его IP-адрес от маршрутизатора. Это не сработает в сотовой сети.
Порт - 5554.
Для пользователей Windows:
Шаг 1:<БР> Вы должны включить опции для разработчиков в вашем телефоне.<БР> Вы можете включить параметры разработчика, используя этот способ.<БР> • Откройте Настройки> О> программы> Подробнее.<БР> • Затем нажмите “номер сборки” семь раз, чтобы включить параметры разработчика.<БР> • Вернуться к настройкам меню, и теперь вы'll быть в состоянии видеть “параметры разработчика” там. <БР> • Нажмите на него и включите отладку USB в меню на следующем экране.<БР>
Шаг 2:
Откройте cmd и введите АБР.<БР> если вы обнаружите, что АБР не действует команда, то вы должны добавить путь в переменную среды.<БР>
•Сначала зайдите в ВЫ SDK установлен в папку Следовать по этому пути, и этот путь просто для примера. Д:\программного обеспечения\разработка\Andoird\СДК\СДК\платформы-инструменты\; Д:\программного обеспечения\разработка\Andoird\СДК\СДК\инструменты;<БР> • Теперь поиск на системе Windows расширенные настройки<БР>
Открыть переменной среды.
затем открыть путь и вставьте следующий путь это пример.<БР> Вы СДК путь отличается от моего, пожалуйста, используйте ваш. D:\softwares\Development\Andoird\SDK\sdk\platform-tools\; D:\softwares\Development\Andoird\SDK\sdk\tools;<БР>
Шаг 3:
Откройте cmd и введите АБР. если вы все еще видите, что ADB не является допустимым команду, тогда ваш путь не установил должным образом следовать выше шаги.
Теперь вы можете подключите ваш телефон к ПК.
Открыть cmd и тип устройств ADB и вы можете видеть ваше устройство. Найти телефон по ip адресу.<БР>
Тип:- АБР tcpip 5555
Получить IP-адрес вашего телефона
adb shell netcfg
Теперь,
adb connect "IP address of your phone"
Теперь запустите проект Android, и если не видеть вас устройство, потом опять типа АБР подключения IP-адрес вашего телефона
Для Linux и маководов:
Шаг 1: откройте терминал и ADB устанавливать с помощью
Подключите телефон через USB кабель к ПК. Введите следующую команду в терминале<БР>
adb tcpip 5555
С помощью ADB, подключить Android телефон IP-адрес.
Удалить ваш телефон.
(Обратите внимание, что это может быть сделано, используя корневое устройство, но вы можете использовать оболочку на корневое устройство, которое не'т требуют подключения через USB)
Во-первых, откройте командную строку (cmd). Если вы используете Android Studio или IntelliJ есть консоль, входящая в состав там можно использовать.
Если у вас есть АБР добавляются в путь, вы можете пропустить часть компакт-диска.
Если возможно, откройте папку СДК, щелкните правой кнопкой мыши, и нажмите на "запуск командной строки Здесь". Не все имеют эту опцию, так что вы должны сделать это (эти) команды, а также:
Окна: поменять диск (если применимо)
D:
И доступ к SDK и инструментов платформы. Замените этот путь с вашего местоположения СДК:
cd /sdk/path/here/platform-tools
Теперь у вас есть доступ к отладочный мост Андроид.
С устройством, подключенным к компьютеру, сделайте следующее:
adb tcpip <port>
adb connect <ip>:<port>
Где в <порту>
это порт, который вы хотите подключиться к (по умолчанию 5555
) и в <ИС>
это IP устройства, которое вы хотите подключиться.
Пожалуйста, обратите внимание: 5555
- это порт по умолчанию и просто пишем IP-адрес подключается. Если вы используете нестандартный порт вы можете, по крайней мере, улучшить безопасность немного. USB отладка через Wi-Fi может быть злоупотребляют, но только если устройство подключено к компьютеру, кто хочет злоупотреблять устройством. Использует нестандартный порт, по крайней мере, делает его немного сложнее для подключения.
Если вы используете нестандартный порт, убедитесь, чтобы добавить его после IP. Пишет порт не подключается к 5555
и если вы не'т использовать, что соединение будет разорвано.
Вы можете найти IP-адрес устройства двумя способами:
В зависимости от вашего устройства, точные названия могут варьироваться. Откройте Настройки и перейдите к Об устройстве -> состояние -> IP-адрес
Использовать АБР, чтобы получить IP
Из консоли выполните:
adb shell ip -f inet addr show wlan0
И как только вы закончите с подключением, вы можете отсоединить устройство от компьютера, выполнив:
adb disconnect <ip>:<port>
Или нет IP для отключения всех устройств. Если вы используете нестандартный порт, Вы необходимо указать порт, который нужно отсоединить от. По умолчанию 5555 здесь.
Чтобы отключить порт (если это то, что вы хотите сделать) вы делаете эту команду с подключенного устройства:
adb usb
Или вы можете перезапустить устройство, чтобы удалить протокол tcpip соединения
Во-первых, вам нужен доступ к консоли. Вы либо подключите устройство с помощью USB-кабеля и использовать АБР оболочки или загрузить приложение из Google играть, FDroid, или какого-то другого источника.
Затем вы делаете:
su
setprop service.adb.tcp.port <port>
stop adbd
start adbd
И подключить устройство, у вас как в некорневых версию АБР подключения <ИС>:<порту>
.
И если вы хотите, чтобы отключить порт и вернуться к USB слушают:
setprop service.adb.tcp.port -1
stop adbd
start adbd
Вы можете также использовать андроид студии плагин, чтобы сделать это для вас (Дон'т помню сейчас названия), и для укоренившихся пользователей там's также возможность загрузки Android-приложение, чтобы настроить подключение к телефону (АБР подключения, наверное, все же требуется).
Некоторые телефоны имеют параметр в настройках для разработчиков (это относится к некоторые некорневых телефонов, хотя, вероятно, некоторых укоренившихся телефонов тоже), что обеспечивает переключение АБР по Wi-Fi с самого устройства без root или подключения компьютера, чтобы запустить его. Хотя есть несколько телефонов, что
Мне нужно, чтобы получить и USB и протокол tcpip работает на АБР (Дон'т спросить), поэтому я сделал следующее (используя направлениях уже писали, от XDA-разработчиков)
С помощью АБР оболочки:
su
#Set the port number for adbd
setprop service.adb.tcp.port 5555
#Run the adbd daemon *again* instead of doing stop/start, so there
#are two instances of adbd running.
adbd &
#Set the port back to USB, so the next time ADB is started it's
#on USB again.
setprop service.adb.tcp.port -1
exit
Подключение планшета через TCP-порт. Убедитесь, что ваша система и устройство подключено к той же сети.
Подключение через порт вперед Попробуйте сделать проброс портов,
вперед АБР TCP: в<PC порт>
протокол TCP:<устройство порт>
как:
вперед АБР TCP:5555 протокол TCP:5555.
C:\Users\abc>вперед АБР TCP:7612 ПТС:7612
C:\Users\abc>АБР tcpip 7612 перезапуск в режиме TCP порт: 7612
C:\Users\abc>АБР подключения 10.0.0.1:7612
подключение к 10.0.0.1:7612
Если вы получаете сообщение ошибка: устройство не найдено подключите USB-устройство к системе, то выполните ту же процедуру. для корневого устройства
setprop service.adb.tcp.port 5555
stop adbd
start adbd
Я не знаю, как подключить устройство вообще без USB-соединения, но если вам удастся подключить его, возможно, на другом компьютере, вы можете переключить adbd в режим TCP, выполнив команду
adb tcpip <port>
и подключиться к устройству по Wi-Fi с любого компьютера в сети:
adb connect <ip>:<port>
Возможно, также возможно переключиться в режим TCP с терминала на устройстве.
Сначала вы должны подключить ваше устройство через USB
Затем подключите ваше устройство к WiFi и получить IP-адрес. Еще во время подключения через USB введите это в командной строке или через Android-студия терминал
adb tcpip 5555
adb connect <device IP>:5555
Вы увидите следующие сообщения:
restarting in TCP mode port: 5555
connected to 172.11.0.16:5555
Теперь извлеките кабель USB, и вы будете по-прежнему видеть ваши logcat как обычно
Сделано. Наслаждайтесь
Как сказал Брайан:
По сообщению на XDA-разработчиков, можно включить АБР по WiFi с устройства с помощью команд
обслуживание как правило.АБР.протокол TCP.порт 5555
остановка adbd
начать adbd
> и вы можете отключить ее и вернуть ADB для прослушивания на USB с
обслуживание как правило.АБР.протокол TCP.порт -1
остановка adbd
начать adbd
если у вас уже есть доступ к USB, это даже легче переключаться с помощью WiFi. Из командной строки на компьютере с устройства, подключенного через USB, выдает команды
АБР tcpip 5555
АБР подключения 192.168.0.101:5555
, Чтобы сказать АБР демон вернуться к прослушиванию через USB
АБР USB
есть несколько приложений на рынке Android, которые автоматизируют этот процесс.
Он работает.Нужно просто открыть командную консоль и введите андроид эти команды...
Другое решение (более легкая) на рынке: adbWireless, он будет автоматически настроить телефон.
Root не требуется! для обоих...
adb tcpip 5555
Странно, но это работает только для меня, если у меня есть кабель USB, то я могу отключить USB и идти к ней все остальное АБР.
и то же самое при возвращении к USB,
adb usb
будет работать только при подключении через USB.
Это не'т имеет значения, если я выдаю
setprop service.adb.tcp.port 5555
или
setprop service.adb.tcp.port -1
после остановки & старт adbd, мне все еще нужен USB-кабель или это не'т работу.
Так что, если мой АБР по USB Не'т работать, я уверен, я бы'т быть в состоянии, чтобы позволить АБР по WiFi либо.
Для переключения между режимами TCP и USB с помощью одной команды вы можете добавить в /инит.радиоуправляемый
:
on property:service.adb.tcp.port=*
restart adbd
on property:service.adb.tcp.enable=1
setprop service.adb.tcp.port 5555
on property:service.adb.tcp.enable=0
setprop service.adb.tcp.port -1
И теперь вы можете воспользоваться услугой "имущество".АБР.протокол TCP.чтобы включить или отключить прослушивание на порту 5555. Выполните команду netstat, чтобы посмотреть, будет ли это's для прослушивания. Как вы можете видеть, это также сработает, если вы хотите изменить службу.АБР.протокол TCP.порт вручную.
<Н1>Шаг 1.</Н1>
Убедитесь, что <б>как</б> ваш хозяин АБР компьютер и Android-устройство находятся в одной WiFi сети.
<БР/>
<БР/>
<Н1>Шаг 2.</Н1>
Подключите устройство Android к компьютеру с помощью кабеля USB. Как только вы сделаете это, ваш хост-компьютер определит ваше устройство и АБР начнет работать в режиме USB на компьютере. Вы можете проверить подключенные устройства с АБР устройств в то время как убедитесь, что ADB работает в режиме USB, выполнив АБР USB
.
$ adb usb
restarting in USB mode
$ adb devices
List of devices attached
ZX1D63HX9R device
<БР/> <Н1>Шаг 3.</Н1> Перезапуска ADB в режиме tcpip вручную с помощью следующей команды:
$ adb tcpip 5556
restarting in TCP mode port: 5556
<БР/> <Н1>Шаг 4.</Н1> Узнать IP адрес Андроид устройства. Есть несколько способов сделать это:
$ АБР оболочки в netcfg
.Теперь, когда вы знаете IP-адрес вашего устройства, подключите АБР хозяина к нему.
$ adb connect 192.168.0.102:5556
already connected to 192.168.0.102:5556
$ adb devices
List of devices attached
ZX1D63HX9R device
192.168.0.102:5556 device
<БР/>
<Н1>Шаг 5.</Н1>
Отсоедините кабель USB и вы должны быть подключены к устройству. Если вы не видите его в АБР устройств
, то просто подключите с помощью команды предыдущего шага:
$ adb connect 192.168.0.102:5556
connected to 192.168.0.102:5556
$ adb devices
List of devices attached
192.168.0.102:5556 device
Либо вы хорошо идти сейчас или тебе придется убить вашего сервера АБР путем выполнения АБР убить-сервер
и пройдите все шаги снова, еще раз.
Надеюсь, что помогает! <БР/> <БР/> <БР/> <б>ссылка:</б>
Вы также можете использовать SSH переадресации локальных портов. Но она по-прежнему включает в себя кабель USB. Подключите телефон через USB к компьютеру (хост) с гибридным твердотельным накопителем работает. На удаленном (гость) компьютер запустит SSH клиент способен проброс/туннелирование. Пример:
plink -L 5037:localhost:5037 <host_IP_address>
Я использую эту конструкцию подключить устройство к виртуальной машине. Элтима USB в Ethernet был'т достаточно стабильный (тайм-ауты во время отладки).
SSH туннелирование работать бесплатно и является более надежным.
Я нахожу других ответов запутанным. Гораздо проще использовать adbWireless:
http://ppareit.github.com/AdbConnect/
Просто установите приложение на свой телефон, чтобы включить отладку по WiFi, установить плагин в Eclipse и вы'повторно сделано.
Действия :
это отлично работает с " SSH " от моего ПК с Windows
Я попытаюсь сделать это на багажнике на мой ЦИАН мобильный телефон или запустить с плинк. С плинк я могу'т запустить снаряд с Су нужную команду ... sudo или su не работает. При загрузке я Дон'т знаю, как это's работает! Моя программа работает оболочка из СШ с Су-C "И Ш в /storage/sdcard1/start_adb.Ш"` в последние 3 команды (без Су --)
Спасибо