Ошибка unauthorized в выводе команды adb devices означает, что компьютер видит смартфон, но тот не подтвердил доверие к этому ПК — RSA-ключ отладки не был авторизован на устройстве. Чаще всего причина проста: на экране телефона не подтверждён запрос «Разрешить отладку по USB?», либо ключ был ранее отозван. Без этого подтверждения любые команды adb будут отклоняться системой Android.
Проблема решается штатными средствами: перезапуском ADB-сервера, отзывом старых авторизаций и повторным подтверждением запроса на смартфоне. Ниже разберём все причины по порядку — от самых частых до редких — и дадим проверяемый порядок действий, который не требует root-прав и не затрагивает данные устройства.
Что означает статус unauthorized в ADB
При первом подключении смартфона к компьютеру с включённой отладкой по USB ADB-сервер отправляет на устройство свой открытый RSA-ключ. Android показывает диалог с отпечатком ключа и предлагает разрешить или запретить подключение. Пока пользователь не нажмёт «Разрешить», устройство числится в списке со статусом unauthorized — «не авторизовано».
Если поставить галочку «Всегда разрешать с этого компьютера», ключ сохраняется, и при следующих подключениях запрос появляться не будет. Статус device означает, что авторизация пройдена и можно выполнять команды. Статус offline — это уже другая проблема, обычно связанная с несовместимостью версий ADB или нестабильным соединением.
Таким образом, unauthorized — это не сбой драйвера и не неисправность кабеля, а незавершённая процедура подтверждения доверия. Именно поэтому первое действие — проверить экран смартфона, а не переустанавливать драйверы.
Первичная проверка: экран смартфона и запрос на разрешение
Начните с самого очевидного. Разблокируйте смартфон — диалог авторизации не показывается на заблокированном экране, а на некоторых прошивках он скрывается в шторке уведомлений. Отключите и заново подключите USB-кабель, наблюдая за экраном телефона.
- 🔓 Разблокируйте экран смартфона перед подключением кабеля.
- 🔔 Проверьте шторку уведомлений — запрос может висеть там.
- ✅ В диалоге «Разрешить отладку по USB?» нажмите «Разрешить» или «OK».
- 📌 При желании отметьте «Всегда разрешать с этого компьютера», чтобы запрос не повторялся.
- 🔁 Если диалог не появился — переподключите кабель или смените USB-порт.
После подтверждения выполните на компьютере команду и проверьте результат:
adb devices
Если вместо unauthorized отображается device — проблема решена. Если статус не изменился или диалог так и не появился, переходите к следующим разделам.
Отзыв авторизаций и сброс RSA-ключей
Когда диалог не появляется вовсе или устройство «запомнило» устаревший ключ, помогает полный сброс авторизаций. Для этого в настройках разработчика есть специальный пункт — обычно он называется «Отозвать доступ для отладки по USB» (точная формулировка зависит от версии Android и оболочки производителя).
Порядок действий такой:
- 🛠 Откройте
Настройки → Для разработчиковна смартфоне. - 🗑 Найдите пункт «Отозвать доступ для отладки по USB» и подтвердите отзыв.
- 🔄 Выключите и снова включите переключатель «Отладка по USB».
- 🔌 Переподключите смартфон к компьютеру и дождитесь диалога авторизации.
На стороне компьютера тоже стоит очистить сохранённые ключи. Они хранятся в папке .android в профиле пользователя — файлы adbkey и adbkey.pub. Удалите их (при закрытом ADB), затем перезапустите сервер:
adb kill-server
adb start-server
adb devices
☑️ Сброс авторизации ADB
⚠️ Внимание: отзыв авторизаций удаляет доверие для всех компьютеров, которые ранее подключались к этому смартфону. Если устройством пользуются с нескольких ПК, на каждом придётся подтвердить запрос заново.
Перезапуск ADB-сервера и проверка версии
Зависший или устаревший ADB-сервер — ещё одна типичная причина. Возможная ситуация: на компьютере установлены несколько копий adb.exe (например, из Android SDK, из отдельного архива platform-tools и из состава сторонних утилит), и они конфликтуют. Тогда сервер работает с одной версией, а клиент — с другой.
Проверьте версию командой adb version и убедитесь, что используется свежий пакет platform-tools с официального сайта для разработчиков Android. Старые версии могут некорректно работать с новыми выпусками Android, где усилены требования к авторизации.
Если перезапуск через adb kill-server не помогает, завершите процесс вручную через диспетчер задач Windows (процесс adb.exe) и запустите сервер заново. Также проверьте, не занят ли порт ADB другой программой — например, некоторые утилиты синхронизации смартфонов запускают собственный ADB-фоновый процесс.
Кабель, USB-порт и режим подключения
Хотя unauthorized — это программный статус, нестабильное физическое соединение может мешать диалогу авторизации появиться или сохраниться. Возможная причина — кабель, рассчитанный только на зарядку, без линий передачи данных: в этом случае устройство вообще не определится, но на некоторых конфигурациях соединение «наполовину» работает и ведёт себя непредсказуемо.
Что стоит проверить:
- 🔌 Используйте кабель, которым точно передавались файлы, а не только зарядка.
- 🖥 Подключайтесь напрямую к порту компьютера, без хабов и удлинителей.
- 🔃 Попробуйте другой USB-порт — на некоторых системах порты USB 2.0 и 3.0 ведут себя по-разному.
- 📲 На смартфоне в уведомлении о USB-подключении смените режим (например, с «Только зарядка» на «Передача файлов / MTP») — на части прошивок это влияет на инициализацию ADB.
После каждой смены порта или режима повторяйте adb devices и смотрите на экран телефона: появление диалога авторизации — признак того, что соединение заработало корректно.
Особенности: разблокировка загрузчика, работа без подтверждения экрана
Отдельная ситуация — когда экран смартфона не работает или недоступен, а подтвердить диалог невозможно. Здесь важно понимать ограничение: авторизация ADB — это механизм безопасности Android, и штатного способа обойти её без подтверждения на самом устройстве не существует. Именно так задумано системой, чтобы никто не мог получить доступ к данным через чужой компьютер.
Если диалог ранее был подтверждён с этим ПК и ключ не отзывался, авторизация сохранится. Если нет — варианты ограничены: подключение внешнего дисплея или мыши через OTG (если устройство это поддерживает), чтобы нажать «Разрешить», либо обращение в сервис. Инструкции с разборкой устройства или модификацией разделов относятся к рискованным операциям и выходят за рамки безопасной диагностики.
Почему нельзя обойти авторизацию программно
Механизм RSA-ключей встроен в демон adbd на уровне системы Android. Ключ компьютера должен быть записан в системное хранилище устройства, а запись возможна только после подтверждения пользователем на разблокированном экране. Это защита от несанкционированного доступа, а не техническая недоработка.
Сводная таблица причин и решений
| Симптом | Вероятная причина | Что делать |
|---|---|---|
| unauthorized, диалога нет | Запрос скрыт или экран заблокирован | Разблокировать смартфон, переподключить кабель, проверить уведомления |
| unauthorized после смены ПК | Новый ключ не авторизован | Подтвердить диалог на устройстве |
| Диалог не появляется совсем | Устаревший ключ или конфликт версий ADB | Отозвать авторизации, удалить adbkey, обновить platform-tools |
| Статус скачет между offline и unauthorized | Нестабильное соединение или конфликт ADB-процессов | Сменить кабель/порт, завершить лишние adb.exe |
| unauthorized, экран не работает | Невозможно подтвердить диалог | OTG-мышь/внешний дисплей, если поддерживается; иначе сервис |
⚠️ Внимание: не скачивайте «патченые» версии ADB и сторонние утилиты, обещающие обход авторизации. В лучшем случае они не сработают, в худшем — содержат вредоносный код, поскольку обход механизма доверия — типичная задача именно вредоносного ПО.
Частые ошибки и что проверить в последнюю очередь
Несколько моментов, которые регулярно упускают. Во-первых, отладка по USB может быть просто выключена — проверьте тумблер в разделе «Для разработчиков». Во-вторых, сам раздел разработчика скрыт, пока не выполнить активацию через многократное нажатие на «Номер сборки» в разделе «О телефоне» — путь может немного отличаться в зависимости от оболочки.
В-третьих, на Windows проверьте в диспетчере устройств, как определяется смартфон: если он числится с ошибкой или как неизвестное устройство, возможная причина — отсутствующий драйвер. Обычно помогает установка драйвера от производителя смартфона или стандартного драйвера Google USB из состава SDK. Точный драйвер зависит от модели устройства, поэтому сверяйтесь с документацией производителя.
В-четвёртых, на некоторых корпоративных устройствах отладка по USB заблокирована политикой администратора — в этом случае тумблер будет неактивен, и изменить это может только владелец политики.
Частые вопросы
Почему диалог «Разрешить отладку по USB» не появляется?
Возможные причины: экран заблокирован, запрос скрыт в шторке уведомлений, ключ этого компьютера уже отозван или сохранён, устарела версия ADB, либо нестабильно USB-соединение. Помогает отзыв авторизаций в настройках разработчика, удаление файлов adbkey на ПК и переподключение кабеля.
Чем unauthorized отличается от offline?
Unauthorized означает, что устройство ждёт подтверждения доверия к компьютеру. Offline — что авторизация есть или не требуется, но связь с демоном adbd потеряна: обычно из-за несовместимости версий ADB, обрыва соединения или сбоя на устройстве. Решается перезапуском сервера и обновлением platform-tools.
Можно ли авторизовать ADB без нажатия на экран смартфона?
Штатного способа нет — подтверждение на разблокированном экране является обязательной частью механизма безопасности Android. Если экран не работает, рассмотрите подключение мыши через OTG-адаптер (при поддержке устройством) или обратитесь в сервисный центр.
Где хранятся ключи ADB на компьютере?
В папке .android внутри домашнего каталога пользователя: файлы adbkey (закрытый ключ) и adbkey.pub (открытый ключ). Удаление этих файлов при остановленном ADB-сервере сбрасывает «личность» компьютера, и при следующем подключении смартфон запросит авторизацию заново.
Нужен ли root для исправления unauthorized?
Нет. Ошибка решается штатными средствами: подтверждением диалога, отзывом авторизаций, перезапуском ADB-сервера и проверкой соединения. Root-доступ для этой процедуры не требуется.