Что означает ошибка UNAUTH
Ошибка adb device not authorized означает, что ADB-сервер на компьютере не может установить доверенное соединение с Android-устройством. При выполнении adb devices устройство отображается со статусом unauthorized. Обычно это происходит при первом подключении или после сброса настроек, когда отпечаток ключа RSA не подтверждён на экране смартфона или планшета.
Причины возникновения
- На устройстве не был принят отпечаток ключа RSA при появлении запроса «Разрешить отладку по USB?».
- Отладка по USB была отключена в настройках разработчика после сброса до заводских настроек.
- Использован повреждённый или зарядный USB-кабель, а также порт, не поддерживающий режим передачи данных.
- Ключи ADB на компьютере повреждены или не совпадают с ожидаемыми устройством после смены ПК или переустановки ОС.
- На Linux отсутствуют или настроены некорректно правила udev для устройства, что блокирует доступ без прав суперпользователя.
Способы решения
Способ 1: Переподключение и смена кабеля/порта
- Отключите устройство от компьютера.
- Подключите его к другому USB-порту, желательно на задней панели ПК.
- Используйте другой кабель, поддерживающий передачу данных.
- На устройстве, если появится запрос, выберите режим работы USB «Передача файлов» (MTP).
- На компьютере выполните:
adb kill-server
adb start-server
adb devices
Проверьте, изменился ли статус устройства на device.
Способ 2: Сброс авторизации и повторная отладка
- На Android-устройстве отключите Отладку по USB в настройках разработчика.
- На компьютере выполните:
adb kill-server
adb start-server
- Снова включите отладку по USB на устройстве.
- Подключите устройство к ПК и проверьте вывод:
adb devices
- Если на экране появится запрос «Разрешить отладку по USB?», нажмите ОК и поставьте галочку «Всегда разрешать с этого компьютера».
Способ 3: Удаление ключей ADB и настройка доступа
- На компьютере удалите старые ключи:
# Windows
del %USERPROFILE%\.adb\adbkey %USERPROFILE%\.adb\adbkey.pub
# macOS и Linux
rm ~/.android/adbkey ~/.android/adbkey.pub
- На Linux настройте правила udev. Создайте файл:
sudo nano /etc/udev/rules.d/51-android.rules
Добавьте строку (замените VENDOR_ID на ID вашего производителя, например 04e8 для Samsung):
SUBSYSTEM=="usb", ATTR{idVendor}=="VENDOR_ID", MODE="0666", GROUP="plugdev"
Перезагрузите правила:
sudo udevadm control --reload-rules
sudo udevadm trigger
- Перезапустите ADB и подключите устройство:
adb kill-server
adb start-server
adb devices
Примите запрос на устройстве, если он появится.
Профилактика
- Используйте только оригинальные или проверенные каблы, поддерживающие режим MTP.
- Не отключайте отладку по USB без необходимости, особенно после сброса настроек.
- При подключении к новому ПК всегда проверяйте и принимайте отпечаток ключа RSA на экране устройства.
- На Linux регулярно проверяйте права доступа к устройствам через правила udev, чтобы избежать проблем с доступом.