Статус unauthorized в выводе команды adb devices означает, что компьютер видит смартфон, но смартфон не подтвердил доверие к этому компьютеру: на экране устройства либо не появился диалог разрешения отладки по USB, либо пользователь его отклонил. Пока авторизация не подтверждена, никакие команды ADB выполняться не будут — ни установка APK, ни доступ к shell, ни передача файлов.
Проблема почти всегда решается без переустановки системы: достаточно правильно включить отладку по USB, подтвердить RSA-ключ на телефоне или сбросить ключи на стороне ПК. Ниже разберём, почему возникает статус unauthorized и как устранить его пошагово.
Что означает статус unauthorized в ADB
Когда вы подключаете Android-устройство к компьютеру с включённой отладкой по USB, компьютер отправляет на смартфон свой открытый RSA-ключ. Телефон должен показать диалог «Разрешить отладку по USB?» с отпечатком ключа. Только после нажатия «ОК» устройство переходит в состояние device.
Если диалог не появился, был скрыт, отклонён или ключ на ПК сменился — устройство остаётся в состоянии unauthorized. Проверить текущий статус можно командой:
adb devices
Вывод с проблемой выглядит так: серийный номер устройства присутствует, но рядом стоит слово unauthorized вместо device. Это отличает ситуацию от случая, когда устройство вообще не определяется (тогда список пуст, и причина — в драйверах или кабеле).
Основные причины ошибки
Прежде чем что-то менять, полезно понять, какой сценарий у вас. Возможные причины:
- 🔕 Диалог разрешения появился и исчез, либо был случайно отклонён.
- 🔒 Экран смартфона заблокирован — на многих прошивках запрос не показывается на заблокированном экране.
- 🔑 На компьютере сменились ключи ADB (переустановка, другой пользователь, другой ПК), а старое разрешение на телефоне им не соответствует.
- 🔌 Отладка по USB была выключена или сброшена после обновления прошивки.
- 🖥️ Устаревшая версия platform-tools конфликтует с новой версией Android.
Чаще всего помогает простая связка: отозвать разрешения отладки на телефоне и перезапустить ADB-сервер на ПК, после чего диалог появляется заново.
Шаг 1. Проверка настроек на смартфоне
Сначала убедитесь, что отладка вообще активна. Откройте Настройки → О телефоне и семь раз нажмите на пункт «Номер сборки», чтобы включить режим разработчика (точный путь может отличаться в зависимости от оболочки — сверьтесь с инструкцией вашей модели). Затем перейдите в Система → Для разработчиков и включите Отладка по USB.
Далее в том же меню найдите пункт Отозвать разрешения на отладку по USB (название может незначительно отличаться) и нажмите его. Это сотрёт все ранее выданные разрешения, и при следующем подключении диалог появится заново.
☑️ Подготовка смартфона
После этого отключите кабель, разблокируйте экран и подключите устройство заново. Диалог с отпечатком ключа должен появиться в течение нескольких секунд. Отметьте пункт «Всегда разрешать с этого компьютера» и нажмите «ОК».
⚠️ Внимание: не подтверждайте диалог отладки, если телефон подключён к чужому или общественному компьютеру. Подтверждение даёт ПК полный доступ к данным устройства через ADB.
Шаг 2. Перезапуск ADB-сервера и сброс ключей на ПК
Если диалог так и не появляется, проблема может быть на стороне компьютера. Перезапустите сервер ADB:
adb kill-server
adb start-server
adb devices
Если это не помогло, удалите файлы ключей, чтобы ADB сгенерировал новые. На Windows они обычно лежат в папке профиля пользователя: C:\Users\Имя\.android\ — файлы adbkey и adbkey.pub. Удалите их, снова выполните перезапуск сервера и переподключите устройство.
Также убедитесь, что у вас актуальная версия platform-tools — официального пакета от Google, в который входит adb.exe. Старые версии иногда некорректно работают с новыми выпусками Android. Скачивайте пакет только с официального сайта для разработчиков Android.
Шаг 3. Проверка кабеля, порта и драйверов
Хотя статус unauthorized обычно означает, что связь есть, нестабильное соединение может мешать показу диалога. Проверьте следующее:
- 🔌 Используйте кабель, поддерживающий передачу данных, а не только зарядку.
- 🖥️ Подключайтесь напрямую к порту ПК, без хабов и переходников.
- 📱 В шторке уведомлений Android выберите режим USB-подключения «Передача файлов (MTP)» — на части прошивок диалог отладки не показывается в режиме «Только зарядка».
- 💾 В диспетчере устройств Windows убедитесь, что устройство определяется без ошибок; при необходимости установите драйвер от производителя смартфона.
Сводная таблица: симптомы и решения
| Симптом | Вероятная причина | Действие |
|---|---|---|
| unauthorized, диалога нет | Экран заблокирован или разрешения отозваны | Разблокировать экран, отозвать разрешения, переподключить |
| unauthorized после смены ПК | Новый RSA-ключ не подтверждён | Подтвердить диалог на телефоне |
| unauthorized после обновления Android | Сброс настроек отладки | Заново включить отладку по USB |
| Список устройств пуст | Драйвер или кабель | Проверить диспетчер устройств, сменить кабель |
| unauthorized persists после всего | Конфликт ключей или версий | Удалить adbkey, обновить platform-tools |
Дополнительные сценарии
На некоторых прошивках (например, с корпоративными политиками или активированным рабочим профилем) отладка по USB может быть заблокирована администратором устройства. В этом случае пункт в меню разработчика будет неактивен, и обойти ограничение штатными средствами не получится.
Что делать, если экран разбит и диалог не нажать
Если сенсор не работает и подтвердить диалог невозможно, варианты ограничены. Можно попробовать подключить USB-мышь через OTG-адаптер и нажать «ОК» курсором. Если ранее на этом ПК уже было выдано разрешение с галочкой «Всегда разрешать», устройство может авторизоваться автоматически. Иных штатных способов подтвердить диалог без экрана не существует — это сделано намеренно в целях безопасности.
Ещё один случай — несколько учётных записей пользователей на Windows. Ключи ADB хранятся в профиле конкретного пользователя, поэтому разрешение, выданное под одной учётной записью, не действует для другой. Под каждым пользователем диалог нужно подтверждать отдельно.
⚠️ Внимание: не скачивайте «исправленные» версии adb.exe со сторонних сайтов и не отключайте проверку ключей модифицированными сборками. Это открывает устройство для несанкционированного доступа.
Частые вопросы
Почему диалог разрешения отладки не появляется вообще?
Возможные причины: экран заблокирован, выбран режим USB «Только зарядка», отладка по USB выключена, либо ключ этого ПК уже есть в списке отозванных. Отзовите разрешения в меню разработчика, смените режим USB на MTP и переподключите кабель при разблокированном экране.
Чем unauthorized отличается от offline?
unauthorized — устройство ждёт подтверждения RSA-ключа. offline — соединение установлено, но оборвалось или зависло; в этом случае обычно помогает перезапуск сервера командами adb kill-server и adb start-server либо переподключение кабеля.
Нужно ли подтверждать диалог при каждом подключении?
Нет, если при первом подтверждении отметить пункт «Всегда разрешать с этого компьютера». Разрешение сохранится до тех пор, пока вы не отзовёте его вручную или не сменятся ключи на ПК.
Поможет ли сброс телефона к заводским настройкам?
Технически сброс удалит все сохранённые разрешения, но это крайняя и избыточная мера: та же цель достигается пунктом «Отозвать разрешения на отладку по USB» без потери данных. Прибегать к полному сбросу ради ошибки unauthorized не нужно.
Ошибка возникает на Android-эмуляторе — это то же самое?
Нет, эмуляторы обычно не требуют подтверждения ключа. Если эмулятор показывает unauthorized, чаще помогает его холодная перезагрузка (cold boot) или пересоздание виртуального устройства в менеджере AVD.