Что означает ошибка ADB permission
Ошибка ADB permission (ADB-PERM) появляется, когда платформа Android Debug Bridge не может установить соединение с устройством из-за отсутствия прав на отладку. Обычно она проявляется так:
adb shell
error: device unauthorized.
This adb server's $ADB_VERSION is too old; it won't work with this version of adb.
Ошибка возникает сразу после подключения кабеля USB или при попытке выполнить команду adb devices. Причина кроется в том, что Android требует явного подтверждения на экране устройства, а компьютер запоминает этот выбор в ключевой файле. Если ключ устарел или права были отозваны, ADB блокирует доступ.
Причины возникновения
- Отключенная отладка USB — пользователь случайно отключил опцию «Отладка по USB» в меню разработчика.
- Старый ключ авторизации — файл
adb_keysна компьютере содержит старый отпечаток, который Android больше не принимает. - Изменение системы прав — после обновления Android (например, с версии 12 до 13) политика разрешений изменилась, и старые права стали недействительными.
- Конфликт драйверов — устаревшие или поврежденные драйверы платформы Android SDK могут препятствовать корректной инициализации ADB.
- Блокировка антивирусом — некоторые программы безопасности помечают adb.exe как подозрительный процесс и ограничивают его сетевой доступ.
Способы решения
Способ 1: Включить отладку USB
- На устройстве Android перейдите в Настройки → Для разработчиков.
- Включите переключатель Отладка по USB.
- На экране телефона появится запрос «Разрешить USB‑отладку?» — нажмите Разрешить.
- Подключите устройство к компьютеру и выполните в терминале:
adb devices
Если устройство отображается, проблема решена.
Способ 2: Сбросить авторизацию ADB
Когда права уже не запомнены, нужно удалить старый ключ и получить новый:
- Отключите устройство от компьютера.
- Найдите файл
adb_keys(по умолчанию находится в~/.android/на Linux/macOS или%USERPROFILE%\.android\на Windows) и удалите его (или переименуйте). - Подключите устройство снова.
- В терминале выполните:
adb kill-server
adb start-server
adb devices
Появится новый запрос на устройстве — подтвердите доступ.
Способ 3: Переустановить драйверы Platform‑tools
Если проблема связана с поврежденными файлами SDK:
- Скачайте последнюю версию Platform‑tools с официального сайта Android Developers.
- Распакуйте архив в удобное место.
- Добавьте папку
platform-toolsв переменную PATH или используйте полный путь кadb. - Выполните те же команды, что и в Способе 2:
./adb kill-server
./adb devices
Обновлённый бинарный файл обычно исправляет ошибки, вызванные устаревшей версией ADB.
Профилактика
- Всегда подтверждайте запрос «Разрешить USB‑отладку?» на устройстве сразу после подключения кабеля.
- Periodically проверяйте версию ADB:
adb versionи обновляйте Platform‑tools, когда выходят новые релизы Android. - Храните файл
adb_keysв резервной копии, чтобы избежать потери авторизации после переустановки системы. - Если используете несколько компьютеров, на каждом из них добавьте отпечаток устройства через
adb keygenи распределите публичный ключ, чтобы избежать постоянных запросов.
Следуя этим советам, вы минимизируете риск повторения ошибки ADB permission и сможете быстро восстанавливать доступ к устройству при необходимости.