Запускать / устанавливать / отлаживать приложения Android через Wi-Fi?
Я думал, что есть способ проверить ваши приложения в разработке по Wi-Fi. Это возможно? Я бы хотел, чтобы я смог спрятать свой телефон и развиваться по беспроводной сети.
Не говоря уже о том, нужно ли отлаживать приложение, которое связывается с USB-подключенным устройством.
Теперь вы можете использовать эту библиотеку. Установите этот плагин и наслаждайтесь отладкой по Wi-Fi.
23 ответа
- Подключите устройство через USB и убедитесь, что отладка работает.
- adb tcpip 5555
- найдите IP-адрес с adb shell netcfg или adb shell ifconfig с 6.0 и выше
- adb connect :5555
- Отключите USB и продолжите беспроводную отладку.
- adb -s :5555 usb , чтобы вернуться, когда закончите.
Чтобы найти IP-адрес устройства: запустите adb shell , а затем netcfg . Вы увидите его там. Чтобы найти IP-адрес при использовании OSX, запустите команду adb shell ip route .
ПРЕДУПРЕЖДЕНИЕ: оставляя включенную опцию опасной, любой пользователь вашей сети может подключиться к вашему устройству при отладке, даже если вы находитесь в сети передачи данных. Делайте это только при подключении к надежному Wi-Fi и не забудьте отключить его, когда закончите!
@Sergei предположил, что строка 2 должна быть изменена, комментируя: «-d опция, необходимая для подключения к USB-устройству, когда другое соединение сохраняется (например, подключенный эмулятор или другое устройство Wi-Fi)».
Эта информация может оказаться полезной для будущих читателей, но я вернулся к исходной версии, на которой было получено 178 сообщений.
На каком-то устройстве вы можете сделать то же самое даже , если у вас нет USB-кабеля:
- Включить ADB через сеть в настройках разработчика Он должен показывать IP-адрес
- adb connect :5555
- Отключить настройку при завершении
С помощью Android Studio есть плагин, позволяющий подключать USB-отладку без необходимости использования какой-либо команды ADB с терминала.
Это требует работы adb поверх usb для первого шага. Существует ли на устройстве способ без полномочий root для переключения adb на прослушивание tcpip, или setprop service.adb.tcp.port единственный способ сделать это?
была та же проблема, и, поскольку я noob, я пытался «adb connect xxx.xxx.xxx.xx / xx», и все, что мне нужно было сделать, это удалить часть / xx, которая, как я понял, относится к порту . просто оставив это здесь
хотя уже поздно, @srowley, возможно, вам придется заново подключить USB-кабель, это сработало для меня, и все эти дни я был ослеплен, думая, что доступ с правами root — единственный выход! Спасибо _/\_
Я отредактировал ответ, добавив способ сделать это без USB-кабеля, предложение для плагина Android Studio и предупреждение о безопасности
У меня не было ни опции «ADB по сети», ни USB-кабеля, поэтому я просто скачал приложение в магазине игр под названием Wifi ADB, и оно прекрасно работает: play.google.com/store/apps/…
@ParthAnjaria Если у вас нет опции «ADB через сеть»: в этом случае вы можете сделать то же самое, выполнив шаги, указанные в ответе Раду Симионеску или в ответах на этот вопрос.
Работает нормально, но ужасно медленно. Нет реальной практической причины использовать это через кабель WiFi.
нет необходимости указывать порт; что-то вроде adb connect 192.168.123 должно работать просто отлично
(не требуется root). Существует один лучший, простой и с UI-методом для Android Studio
Плагин IntelliJ и Android Studio, созданный для быстрого подключения вашего устройства Android через Wi-Fi для установки, запуска и отладки ваших приложений без подключения USB. Нажмите одну кнопку и забудьте о своем USB-кабеле.
просто установите плагин Android WiFi ADB
Загрузите и установите Android WiFi ADB непосредственно из
Intellij/Android Studio: Настройки/Настройки- > Плагины- > Обзор репозиториев
Помните! для инициализации устройства, которое вы должны подключить с помощью usb
В качестве альтернативы вы можете загрузить плагин с сайта плагина JetBrains и установить его вручную: Настройки/Настройки- > Плагины- > Установить плагин с диска.
Вы можете легко подключать и управлять своими устройствами. для получения дополнительной информации читайте здесь https://github.com/pedrovgs/AndroidWiFiADB
@SagarChavada Я столкнулся с той же проблемой и нашел решение stackoverflow.com/questions/51904545/… .
Если вы хотите включить беспроводную adb на устройстве без подключения с помощью кабеля USB вообще (требуется корень):
- Установите приложение терминала на устройстве (например, эмулятор терминала Android) Введите следующие
- су
- setprop service.adb.tcp.port 5555
- stop adbd
- начать adbd
Поскольку вы уже открыли терминал, вы можете найти IP-адрес устройства:
Затем в командной строке отладки выполните команду:
adb connect ip.of.the.device
Это приведет к тому, что устройство будет отображаться как любые другие эмуляторы, которые у вас могут быть. Обратите внимание, что TCP останется открытым до тех пор, пока вы не reset устройства. Вы также можете установить приложение Wi-Fi Keep Alive, если вы часто испытываете разъединения.
Не забудьте закрыть TCP при подключении к общедоступным сетям, если вы хотите чувствовать себя в безопасности. Вы можете сделать следующее или просто перезапустить устройство:
Спасибо, это сработало. Для тех, кто не может видеть IP-адрес своего устройства Android, перейдите в «Настройки> Беспроводная связь> Wi-Fi» и затем нажмите и удерживайте Wi-Fi, к которому вы подключены. Затем выберите « Modify network config выберите « Show Advance Options и выберите «IP-адрес».
У утилиты adb есть возможность подключения к устройству через TCP/IP. Однако adbd обычно не прослушивает TCP-соединения.
Если вы хотите запустить его, вам понадобится инженерное устройство (другими словами, вам нужен root). Затем следуйте указаниям в этом сообщении:
Поскольку это работает только на устройствах, оно официально не поддерживается. Используйте на свой страх и риск, ждите ошибок и т.д.
Я пытался подключить более одного устройства (по-видимому, два) . но не смог сделать это . Есть ли способ подключить более одного устройства для отладки через Wi-Fi (без USB ..) .
Для всех это означает лучший метод (EASIEST METHOD):
1) Плагин для выходов студии Android, называемый Android wifi ADB
2) Перейти к файлу → Настройки → Плагины → Обзор репозиториев
3) Найдите Android WiFi ADB, нажмите INSTALL, а затем перезапустите в командной строке
4) Появится новый значок, который является вашим новым плагином.
Теперь сделать эту работу:
5) Перейдите к опции разработчика телефона и включите DEBUGGING (обязательно)
6) Также включите, ПОЗВОЛЯТЬ DEBUG OVER TCP/NETWORK
7) Подключите телефон через USB и убедитесь, что как телефон, так и ваш компьютер/ноутбук подключены к той же сети (либо горячей или беспроводной)
8) НАЖМИТЕ НА НОВУЮ ИКОНУ (т.е. ваш ANDROID Wifi ABD)
9) Ваш телефон обнаружен и подключится к Wi-Fi/hotspot, и теперь вы можете отключить USB. Это одноразовый процесс, поэтому вам может не потребоваться подключение телефона через USB.
Это позволит сэкономить ваш телефон от нерегулярных платежей, а также является средством для коротких кабелей USB.
- Подключите Android-устройство и хост-компьютер adb к общей сети Wi-Fi, доступной для обоих. Мы обнаружили, что не все точки доступа подходят; вам может потребоваться использовать точку доступа, брандмауэр которой настроен правильно для поддержки adb.
- Подключите устройство с помощью USB-кабеля к компьютеру.
- Убедитесь, что adb работает в режиме USB на хосте.
$ adb usb restarting in USB mode
$ adb devices List of devices attached ######## device
$ adb tcpip 5555 restarting in TCP mode port: 5555
$ adb connect #.#.#.# connected to #.#.#.#:5555
$ adb devices List of devices attached #.#.#.#:5555 device
Если соединение adb никогда не теряется:
- Убедитесь, что ваш хост все еще подключен к той же сети Wi-Fi, на которой установлено ваше устройство Android.
- Повторно подключитесь, снова выполнив шаг «adb connect».
- Или, если это не сработает, reset ваш хост adb:
работал отлично, но мне пришлось отсоединить кабель перед подключением к ip устройства, чтобы устройство появилось после настройки соединения.
Я написал оболочку script, которая позволяет вам отлаживать устройство Android через Wi-Fi.
#!/usr/bin/env bash #Notice: if unable to connect to [ip]:5555, #try adb kill-server then try again. adb shell ip route > addrs.txt #Case 1:Nexus 7 #192.168.88.0/23 dev wlan0 proto kernel scope link src 192.168.89.48 #Case 2: Smartsian T1,Huawei C8813 #default via 192.168.88.1 dev eth0 metric 30 #8.8.8.8 via 192.168.88.1 dev eth0 metric 30 #114.114.114.114 via 192.168.88.1 dev eth0 metric 30 #192.168.88.0/23 dev eth0 proto kernel scope link src 192.168.89.152 metric 30 #192.168.88.1 dev eth0 scope link metric 30 ip_addrs=$(awk <'if( NF >=9)'> addrs.txt) echo "the device ip address is $ip_addrs" echo "connecting. " rm addrs.txt adb tcpip 5555 adb connect "$ip_addrs"
Шаг 1. Сделайте командный файл с приведенными ниже командами и вызовите файл w.bat .
Шаг 2. Скопируйте приведенное ниже содержимое в w.bat и сохраните его в любой из папок, находящихся в %path% вашей системы Windows
echo ***Get phone in Wi-Fi mode*** echo ***Get phone in Wi-Fi mode*** adb devices echo ***Remove cable from the phone now*** adb tcpip 9000 adb connect 192.168.1.1:9000 adb connect 192.168.1.2:9000 adb connect 192.168.1.3:9000 adb connect 192.168.1.4:9000 adb connect 192.168.1.5:9000 adb connect 192.168.1.6:9000
Шаг 3. Подключите телефон и ПК к кабелю
Шаг 4. Убедитесь, что телефон находится в режиме Wi-Fi.
Шаг 5. Удалите кабель, когда командный файл сообщает
Шаг 6. Введите w.bat в командной строке Windows (start → run → type CMD , нажмите Enter ) (черный экран — приглашение Windows DOS), если вы скопировали его в одну из папок пути затем вы можете запускать из любого места, а затем запускать из папки, в которой вы создали этот файл.
Результат командного файла будет примерно таким:
C:\Windows\System32>w C:\Windows\System32>echo ***Get phone in Wi-Fi mode*** ***Get phone in Wi-Fi mode*** C:\Windows\System32>echo ***Get phone in Wi-Fi mode*** ***Get phone in Wi-Fi mode*** C:\Windows\System32>adb devices List of devices attached d4e9f06 device C:\Windows\System32>echo ***Remove cable from the Phone now*** ***Remove cable from the Phone now*** C:\Windows\System32>adb tcpip 9000 restarting in TCP mode port: 9000 C:\Windows\System32>adb connect 192.168.1.1:9000 unable to connect to 192.168.1.1:9000:9000 C:\Windows\System32>adb connect 192.168.1.2:9000 connected to 192.168.1.2:9000 C:\Windows\System32>adb connect 192.168.1.3:9000 unable to connect to 192.168.1.3:9000:9000 C:\Windows\System32>adb connect 192.168.1.4:9000 unable to connect to 192.168.1.4:9000:9000 C:\Windows\System32>adb connect 192.168.1.5:9000 unable to connect to 192.168.1.5:9000:9000 C:\Windows\System32>adb connect 192.168.1.6:9000 unable to connect to 192.168.1.6:9000:9000
Примечание 1: Найти это в выводе, (игнорировать все → невозможно подключиться < - errors)
connected to xxx.xxx.x.x:9000
Если вы видите это в результате, просто удалите кабель с ПК и перейдите в Eclipse и запустите, чтобы установить приложение на устройство; это должно быть.
Примечание 2: ОТКЛЮЧИТЕ ИЛИ ПЕРЕКЛЮЧИТЕ БЕСПРОВОДНЫЙ РЕЖИМ ВЫКЛ: введите команду ниже. Он должен сказать, что перезагрузка в режиме USB — на данном этапе ПК и компьютер НЕ должны быть подключены к кабелю:
C:\Users\dell>adb usb restarting in USB mode
Примечание 3: Шаги по поиску IP-адреса телефона (взяты из Stack Overflow)
a. Dial *#*#4636#*#* to open the Testing menu. b. In the Wi-Fi information menu: click Wi-Fi Status c. Wi-Fi status can be blank for the first time d. Click Refresh Status e. In the IPaddr: >
Примечание 4: Мой телефон. Wi-Fi-соединение. Диапазон IP-адресов обычно указан ниже,
Примечание 5: если вы получаете любую другую последовательность IP-адресов, которые продолжают переназначаться на ваш телефон, вы можете просто изменить IP-адрес в файле w.bat .
Примечание 6: Это метод грубой силы, который устраняет все ручные работы для поиска IP-адреса и подключения к Eclipse/Wi-Fi.
УСПЕХ Примечание 7: Короче говоря, регулярная активность будет примерно такой:
Step 1. Connect PC and Wi-Fi via a cable Step 2. Start CMD - to go to Windows DOS prompt Step 3. Type "w" Step 4. Find connected command in the output Step 5. Success, remove cable and start using Eclipse