Перейти к основному содержимому

Отладка по USB на Android

Разработчику Архитектору Инженеру

Основы подключения и настройки среды

Отладка по USB представляет собой механизм взаимодействия между компьютером разработчика и устройством на базе Android. Этот инструмент позволяет передавать файлы, управлять системой удалённо и запускать приложения в режиме отладки. Для работы требуется наличие Android SDK, установленного эмулятора или физического устройства с активированным режимом разработчика.

Ключевым компонентом процесса является утилита adb (Android Debug Bridge). Она служит мостом между командной строкой компьютера и операционной системой Android. Утилита позволяет видеть подключенные устройства, устанавливать приложения, просматривать логи и выполнять системные команды.

Для корректной работы adb необходимо добавить пути к инструментам в переменную окружения системы. Это позволит вызывать команды из любой директории без указания полного пути к файлам.

Настройка переменных окружения в PowerShell

Система Windows использует переменные окружения для хранения путей к исполняемым файлам. Добавление директорий платформы Android в этот список обеспечивает доступ к инструментам разработки.

Временное добавление путей в текущую сессию терминала выполняется следующей командой:

$env:PATH = "$env:LOCALAPPDATA\Android\Sdk\platform-tools;$env:LOCALAPPDATA\Android\Sdk\emulator;$env:PATH"

После выполнения этой команды переменная PATH содержит новые пути, и утилиты adb и emulator становятся доступны для вызова.

Постоянное изменение переменной окружения требует использования функции SetEnvironmentVariable. Это действие обновит настройки пользователя навсегда:

[Environment]::SetEnvironmentVariable(
"Path",
$env:Path + ";$env:LOCALAPPDATA\Android\Sdk\platform-tools;$env:LOCALAPPDATA\Android\Sdk\emulator",
"User")

После применения постоянного изменения потребуется перезапуск терминала или перезагрузка системы для обновления контекста.

Проверка подключения устройств

Команда adb devices выводит список всех активных подключений. Результат включает серийный номер устройства и его статус.

Статусы могут принимать следующие значения:

  • device — устройство подключено и готово к работе;
  • unauthorized — устройство требует подтверждения подключения на экране;
  • offline — устройство не отвечает или соединение разорвано;
  • no devices — подключенные устройства отсутствуют.

Пример вывода успешного подключения:

List of devices attached
5X3A1B2C3D4E5F6G device

Если статус показывает unauthorized, необходимо подтвердить разрешение на подключение на экране самого телефона. Появится всплывающее окно с вопросом «Разрешить отладку по USB?». Требуется нажать кнопку «ОК» или «Разрешить».

Запуск эмулятора и физическое устройство

При отсутствии физического смартфона разработчик может использовать программный эмулятор. Эмулятор имитирует работу реального устройства, включая процессор, память и экран.

Для запуска эмулятора используется команда emulator с параметром -avd, указывающим на имя виртуального устройства. Имя устройства должно соответствовать созданному ранее образцу в Android Virtual Device Manager.

Пример запуска эмулятора с именем профиля Medium_Phone_API_36:

emulator -avd Medium_Phone_API_36

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

Активация режима разработчика на смартфоне

Производители Android-устройств блокируют установку приложений и отладку по умолчанию для защиты пользователей. Для разблокировки этих функций требуется активация скрытого режима разработчика.

Процесс активации включает следующие шаги:

  1. Перейдите в раздел НастройкиО телефоне.
  2. Найдите пункт Номер сборки.
  3. Нажмите на него семь раз подряд. Система запросит пароль или графический ключ для подтверждения.
  4. После седьмого нажатия появится сообщение о том, что вы стали разработчиком.

Активация открывает доступ к новому разделу меню, который обычно называется Для разработчиков или Параметры разработчика.

Ключевые параметры для отладки

В разделе настроек разработчика необходимо включить следующие опции:

  • Отладка по USB — разрешает передачу данных и команд через кабель.
  • Установка через USB (Install via USB / USB debugging (Security settings)) — разрешает установку приложений в обход Google Play Store. Наличие этого пункта критично для предотвращения ошибки INSTALL_FAILED_USER_RESTRICTED.

Имена пунктов могут отличаться в зависимости от версии прошивки и производителя устройства. Если пункт «Установка через USB» отсутствует, попробуйте найти аналогичные настройки в разделах безопасности или конфиденциальности.

Выбор режима подключения

После включения необходимых опций важно правильно выбрать режим работы USB-порта. По умолчанию многие устройства переходят в режим «Только зарядка», что блокирует передачу файлов и команд.

Необходимо выполнить следующие действия:

  1. Подключите телефон кабелем к компьютеру.
  2. Свайпните панель уведомлений вниз.
  3. Найдите уведомление о подключении USB.
  4. Выберите режим Передача файлов (MTP) или Передача изображений.

Режим «Только зарядка» часто становится причиной невозможности установки приложений через adb install.

Особенности работы с устройствами Xiaomi, Redmi и POCO

Устройства под управлением оболочек MIUI и HyperOS имеют дополнительные уровни защиты. Стандартные настройки разработчика могут быть недостаточны для успешной установки приложений.

Дополнительные требования безопасности

В разделе Для разработчиков на устройствах Xiaomi необходимо убедиться в наличии следующих включенных опций:

  • Отладка по USB (настройки безопасности) — отдельный параметр, требующий отдельного разрешения.
  • Установка через USB — подтверждение права на установку сторонних приложений.

Часто помогает синхронизация аккаунта Mi Account на телефоне и компьютере. Вход в один и тот же аккаунт снижает уровень ограничений безопасности.

Разрешение неизвестных источников

На некоторых версиях прошивок настройка «Установка через USB» не активирует право на установку полностью. Требуется дополнительное разрешение в системе конфиденциальности.

Путь к настройке может выглядеть следующим образом: НастройкиКонфиденциальностьСпец. доступУстановка неизвестных приложений.

В этом списке нужно найти используемый канал (например, ваш файловый менеджер или приложение для развертывания) и разрешить ему установку приложений.

Типичные ошибки и их решение

Ошибка INSTALL_FAILED_USER_RESTRICTed возникает, когда система Android запрещает установку приложения по соображениям безопасности. Причина кроется в отсутствии активированных прав разработчика или неверном режиме подключения.

Алгоритм устранения проблемы:

  1. Проверьте раздел Для разработчиков. Убедитесь, что включены все три пункта: отладка по USB, установка через USB и настройки безопасности.
  2. Переключите режим USB с «Только зарядка» на «Передача файлов».
  3. Отключите кабель и подключите его заново.
  4. Подтвердите запрос на разрешение подключения на экране телефона.
  5. Повторите попытку установки.

Если проблема сохраняется, проверьте статус устройства через команду adb devices. Статус должен быть device.

Пример развертывания приложения MAUI

Разработчики .NET MAUI используют специфические команды для сборки и запуска приложений на Android. Процесс включает компиляцию проекта и автоматическую установку APK на целевое устройство.

Команда сборки с флагом запуска выглядит так:

dotnet build -t:Run -f net10.0-android

Эта команда выполняет следующие действия:

  • Компилирует проект для целевой архитектуры net10.0-android;
  • Создает установочный пакет APK;
  • Автоматически передает файл на подключенное устройство;
  • Запускает приложение.

Полная последовательность действий

Ниже приведен полный сценарий работы с эмулятором и физическим устройством.

Шаг 1. Запуск эмулятора.

emulator -avd Medium_Phone_API_36

Дождитесь полной загрузки интерфейса.

Шаг 2. Проверка видимости устройства.

adb devices

Убедитесь, что в списке есть устройство со статусом device.

Шаг 3. Установка приложения.

dotnet build -t:Run -f net10.0-android

Если используется физическое устройство, убедитесь, что оно отображается в списке adb devices перед запуском команды сборки. При появлении запроса на разрешение подключения на экране телефона нажмите «ОК».

Диагностика и ручная проверка

Для глубокого анализа состояния системы используются дополнительные команды. Они позволяют проверить работоспособность соединения и установить приложение вручную.

Проверка списка устройств

Команда adb devices выводит таблицу подключенных девайсов. Если список пуст, проверьте кабель, порт USB и настройки телефона.

Ручная установка приложения

Если автоматическая установка не сработала, можно использовать команду install напрямую:

adb install path/to/application.apk

Замените путь на актуальный адрес сгенерированного файла.

Использование эмулятора как резервного варианта

Если физическое устройство вызывает постоянные сбои с правами доступа, используйте эмулятор для тестирования. Он предоставляет стабильную среду без ограничений производителей.

# Запуск эмулятора
emulator -avd Medium_Phone_API_36

# Ожидание загрузки
# ...

# Проверка статуса
adb devices

# Сборка и запуск
dotnet build -t:Run -f net10.0-android

См. также

Другие статьи этого же раздела в боковом меню (как на странице «О разделе»).