Гид по технологиям

Как выдавать расширенные разрешения приложениям через ADB

7 min read Android. Обновлено 16 Apr 2026
Выдача разрешений Android через ADB
Выдача разрешений Android через ADB

ADB (Android Debug Bridge) позволяет выдавать расширенные системные разрешения приложениям без рутирования устройства. В статье — пошаговая инструкция по установке Platform-Tools, настройке USB‑отладки, проверке подключения и выполнению команд pm grant / pm revoke. Также приведены чеклисты, шпаргалка команд и рекомендации по безопасности.

Android‑смартфон рядом с ноутбуком

Большинство Android‑приложений запрашивают базовые разрешения (доступ к хранилищу, камере и т.д.) через системный диалог. Но некоторые приложения требуют системных или «расширенных» разрешений, которые нельзя выдать через обычный интерфейс. Рутирование — один из путей, но это сложно и зачастую избыточно. ADB (Android Debug Bridge) даёт альтернативу: через командную строку вы можете временно или постоянно выдавать приложениям дополнительные привилегии.

В этой статье объясним, что такое ADB и как им пользоваться, чтобы выдавать и отзывать разрешения приложений, а также как безопасно и корректно это делать.

Что такое Android Debug Bridge (ADB)

Кратко: ADB — это инструмент командной строки из Android SDK Platform‑Tools. Он устанавливает связь между компьютером и Android‑устройством и позволяет выполнять операции, которые обычно требуют уровня root или доступа к системным компонентам.

Определение в одну строку: ADB — мост между вашим ПК и Android‑устройством для отладки, установки/удаления приложений и управления системными настройками.

Чем полезен ADB:

  • Удаление предустановленных приложений (частично или полностью).
  • Установка APK из командной строки.
  • Сбор логов и трассировка ошибок.
  • Выдача и отзыв системных разрешений (pm grant / pm revoke).
  • Резервное копирование данных без рутирования.

Важно: ADB не даёт автоматом root‑доступ — он выполняет команды от имени оболочки/пользователя платформы. Некоторые разрешения остаются недоступны без системного уровня.

Краткий план (минимальная методология)

  1. Скачайте SDK Platform‑Tools и распакуйте.
  2. Откройте терминал/PowerShell в папке platform‑tools.
  3. На устройстве включите «Параметры разработчика» и USB‑отладку.
  4. Подключите устройство и проверьте adb devices.
  5. Войдите в adb shell и выполните pm grant или pm revoke.
  6. Проверьте результат в приложении или с помощью pm list permissions.

Шаг 1 — загрузка SDK Platform‑Tools

Перейдите на сайт Android Developers и скачайте SDK Platform‑Tools для вашей ОС. Файл скачивается в ZIP‑архиве. Распакуйте его в удобную папку.

Загрузка SDK Platform Tools для Android

Совет: оставьте папку platform‑tools на диске в корне (например, C:\platform-tools) — так проще открывать терминал в ней.

Шаг 2 — открыть PowerShell или Терминал

Откройте папку platform‑tools, затем:

  • Windows 10: удерживайте Shift, кликните правой кнопкой мыши и выберите «Open PowerShell window here».
  • Windows 11: клик правой кнопкой → «Open in Terminal».
  • macOS / Linux: откройте Terminal в папке (на macOS: Finder → Services → New Terminal at Folder или через правый клик).

Примечание: если вы используете локальный бинарник adb на macOS или Linux, иногда потребуется запуск с префиксом ./ (то есть ./adb devices).

Шаг 3 — включите Параметры разработчика и USB‑отладку

На смартфоне:

  1. Откройте «Настройки» → «О телефоне» и многократно нажмите на «Номер сборки» (обычно 7 раз), чтобы включить Параметры разработчика. При необходимости введите пароль блокировки.
  2. Перейдите в «Настройки» → «Система» → «Параметры разработчика» и включите «USB‑отладку».
  3. Подключите телефон к компьютеру USB‑кабелем.

Включение USB‑отладки на Android

Подтверждение разрешения USB‑отладки на устройстве

Важно: при первом подключении система спросит, разрешать ли отладку с этого компьютера — отметьте «Всегда разрешать с этого компьютера», если доверяете машине.

Шаг 4 — проверить подключение устройства

В терминале введите:

adb devices

(На macOS/Linux: если adb в текущей папке, используйте ./adb devices)

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

Результат команды adb devices

Если вы не видите устройство:

  • Проверьте кабель и USB‑порт (используйте оригинальный или качественный кабель).
  • На Windows установите ADB‑драйвер: можно использовать Universal ADB Driver от сторонних разработчиков или официальные драйверы OEM. Ресурсы: ClockworkMod, XDA (поиск ADB installer). Не используйте непроверённые драйверы из непонятных источников.
  • Убедитесь, что режим подключения USB не выставлен только как «Только зарядка» (выберите передачу данных).

Шаг 5 — подтверждение USB‑отладки на устройстве

После успешной команды adb devices при первом использовании вы увидите на телефоне системный диалог «Разрешить USB‑отладку?». Отметьте «Всегда разрешать для этого компьютера», если доверяете, и нажмите «Разрешить».

Шаг 6 — выполнение команд ADB для выдачи разрешений

В терминале введите:

adb shell

Эта команда откроет shell на устройстве. Затем используйте пакетный менеджер pm для выдачи разрешений:

pm grant  
  • Замените на пакетное имя приложения (package name).
  • Замените на полное имя разрешения (например, android.permission.PACKAGE_USAGE_STATS).

Пример из практики: для приложения Battery Guru (пример в статье):

pm grant com.paget96.batteryguru android.permission.PACKAGE_USAGE_STATS

После выполнения команда выдаст разрешение, если оно может быть выдано через pm. Некоторые разрешения невозможны без системного уровня.

Как найти package_name:

  • Установите утилиту «Package Name Viewer» из Play Store (или аналог) и найдите package name.
  • Или в adb shell выполните:
pm list packages | grep -i <часть_имени>

Например:

pm list packages | grep -i battery

Как отозвать разрешение:

pm revoke com.paget96.batteryguru android.permission.PACKAGE_USAGE_STATS

Как проверить, какие разрешения у приложения:

dumpsys package com.paget96.batteryguru | grep permission -A 5

или

pm list permissions | grep -i PACKAGE_USAGE_STATS

Шпаргалка команд (cheat sheet)

  • adb devices — показать подключённые устройства.
  • adb kill-server && adb start-server — перезапустить ADB‑сервис.
  • adb shell — открыть shell на устройстве.
  • pm grant — выдать разрешение.
  • pm revoke — отозвать разрешение.
  • pm list packages — список всех пакетов.
  • pm list permissions — список известных разрешений.
  • adb install — установить APK.
  • adb uninstall — удалить пакет (пользовательский).

Когда ADB не помогает / альтернативы

  • Если разрешение является системным или помечено как signature|system, pm grant может не сработать — для этого нужен root или модификация системы.
  • Для изменения системных настроек (WRITE_SECURE_SETTINGS) иногда требуется системный build или root.
  • Альтернатива: рутирование устройства (влечёт риски и лишает гарантии), использование кастомного рекавери (TWRP) или модификаций прошивки.

Отладка проблем и частые ошибки

  • Ошибка “operation not allowed” при pm grant — вероятно, разрешение невозможно дать без root.
  • Устройство в списке adb devices, но при выполнении adb shell команда «permission denied» — проверьте, не требует ли команда elevated privileges.
  • На Windows конфликт драйверов — удалите старые ADB‑драйверы и установите универсальный драйвер заново.

Риск и безопасность

  • Выдавая расширенные разрешения, вы увеличиваете привилегии приложения. Делайте это только для доверенных приложений.
  • Локальные команды ADB выполняются от имени оболочки — вредоносное ПО с доступом к ADB может нанести вред.
  • После завершения операций отзывайте лишние разрешения (pm revoke) и отключайте USB‑отладку, если она не нужна постоянно.

Роль‑ориентированные чеклисты

Для рядового пользователя:

  • Убедиться, что устройство и ПК находятся под вашим контролем.
  • Включить Параметры разработчика и USB‑отладку.
  • Разрешить отладку только для доверенного компьютера.
  • Выдать нужное разрешение, проверить работу приложения, отозвать при необходимости.

Для IT‑администратора:

  • Подготовить образ Platform‑Tools на выделенном компьютере.
  • Использовать списки доверенных устройств и учётные записи.
  • Документировать выданные разрешения и причины.
  • Автоматизировать через скрипты при массовой настройке.

Для разработчика:

  • Использовать adb shell и pm для тестовых сценариев.
  • Логировать результаты и проверять dumpsys.
  • Помнить о разных поведениях на разных версиях Android.

Критерии приёмки

  • Устройство корректно подключено и отображается в adb devices.
  • Команда pm grant не возвращает ошибку и разрешение отображается в списке разрешений приложения.
  • Функция приложения, требующая разрешения, работает как ожидается.

Факты и подсказки

  • ADB входит в состав Android SDK Platform‑Tools.
  • Команды pm grant/revoke работают не для всех разрешений — некоторые требуют системного уровня.
  • Всегда проверяйте, какие разрешения вы выдаёте, и откатывайте изменения после теста.

Краткое резюме

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

Важно: выдавайте расширенные разрешения только проверенным приложениям и при необходимости отзывайте их.

В заключение: если вы хотите получить больший контроль над Android‑устройством без рутирования, изучение ADB и pm — отличная инвестиция времени.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Показываем и управляем sideload приложениями на Android TV
Android TV

Показываем и управляем sideload приложениями на Android TV

Медленный мобильный интернет: 10 шагов для ускорения
Мобильная связь

Медленный мобильный интернет: 10 шагов для ускорения

Как выбрать тариф iCloud+ — 50GB–12TB
Облако

Как выбрать тариф iCloud+ — 50GB–12TB

Как заменить фон меню GRUB на своё изображение
Linux

Как заменить фон меню GRUB на своё изображение

Организация содержимого PS4 — полное руководство
Игры

Организация содержимого PS4 — полное руководство

Как смотреть живое ТВ в XBMC — плагины и советы
Медиа

Как смотреть живое ТВ в XBMC — плагины и советы