Roman Kryvolapov Engineering Blog

Как да включите дебъгване през Wi-Fi в Android Studio

Подробна инструкция как да свържете устройство с Android Studio през Wi-Fi вместо с кабел. По-долу има два начина: класическият, чрез adb tcpip, който работи на всяка версия на Android, и вграденото безжично дебъгване на Android 11 и по-нови версии, за което кабел не е нужен изобщо.

Чрез adb tcpip

  1. Влизаме в настройките на рутера и задаваме на устройството статичен IP адрес – обикновено това е разделът за DHCP сървъра за LAN. Тук за пример се използва 192.168.1.128. Опцията „Изолиране на клиентите на точката за достъп“ трябва да е изключена, а устройството и компютърът – свързани към една и съща мрежа.
  2. Свързваме се отново към точката за достъп или рестартираме рутера.
  3. Отваряме менюто за разработчици на устройството: за целта трябва да натиснем няколко пъти номера на билда в раздела „За телефона“.
  4. В менюто за разработчици включваме USB дебъгването.
  5. Свързваме устройството с кабел към компютъра със стартирана Android Studio и разрешаваме на устройството достъпа за дебъгване. След това устройството трябва да се появи в списъка с устройства.
  6. Отваряме терминала и проверяваме IP адреса на устройството:
Shell
adb shell ip -f inet addr show wlan0

В отговора ще има ред от вида inet 192.168.1.128/24 brd 192.168.1.255 scope global wlan0.

Ако adb не се намира, посочете пълния път до него: ~/Library/Android/sdk/platform-tools/adb на macOS, C:\Users\<user>\AppData\Local\Android\Sdk\platform-tools\adb на Windows.

  1. Превключваме adb на устройството в мрежов режим:
Shell
adb tcpip 5555

Трябва да се появи редът restarting in TCP mode port: 5555.

  1. Свързваме се по мрежата:
Shell
adb connect 192.168.1.128:5555

При успех ще се появи connected to 192.168.1.128:5555. Сега кабелът може да се изключи. Дали устройството е на линия, може да се провери с командата adb devices: в списъка ще има 192.168.1.128:5555 device. Ако няма устройства, списъкът ще е празен, а командите като adb shell ще отговорят с adb: no devices/emulators found.

Прекъсване на връзката и връщане на adb в USB режим:

Shell
adb disconnect 192.168.1.128:5555
adb usb

След рестартиране на устройството TCP режимът се нулира и стъпки 5–8 ще трябва да се повторят.

Безжично дебъгване на Android 11+

От Android 11 дебъгването през Wi-Fi е вградено в системата и кабел не е нужен дори за първото свързване.

  1. В менюто за разработчици включваме Безжично дебъгване (Wireless debugging).
  2. Най-лесно е в Android Studio: в списъка с устройства избираме Pair Devices Using Wi-Fi и сканираме QR кода от устройството през опцията Сдвояване на устройство с QR код.
  3. Или от терминала: на устройството отваряме Сдвояване на устройство с код за сдвояване, там ще има адрес с порт и шестцифрен код, и изпълняваме
Shell
adb pair 192.168.1.128:<порт за сдвояване>
adb connect 192.168.1.128:<порт за свързване>

adb pair ще поиска шестцифрения код. Портът за свързване е друг: той е показан на главния екран на безжичното дебъгване, до IP адреса.

Има и външен плъгин ADB Wi-Fi: свързваме устройството през USB и натискаме Connect в панела му, след което кабелът може да се изключи. Сега обикновено е достатъчно вграденото сдвояване.