Ошибка ADB при выполнение команды adb shell pm grant…

639

Некоторым Android приложениям необходимые специальные права, которые можно получить с помощью команды adb shell pm grant. На новых устройствах она может завершиться с ошибкой. Как ее исправить?

Вы установили приложение SystemUI Tuner или GSam Battery Monitor или что еще подобное? Этим приложениям, помимо того что их необходимо установить с Google Play, для правильной работы необходимо выдать повышенные привилегии с помощью утилиты adb и ввода команды adb shell pm grant.

Если на старых Android устройствах эта команда выполняется без каких либо проблем, то на новых вы можете получить ошибку «Security exception: grantRuntimePermission: Neither user 2000 nor current process has android.permission.GRANT_RUNTIME_PERMISSIONS. » или Exception occurred while executing.

Чтобы исправить ошибку, не нужно выполнять каких либо сложных действий, все лежит на поверхности. Убедитесь что у вас установлена самая новая версия adb на компьютере, а также что вы включили «Отладку по USB» и прошли авторизацию.

А теперь самое главное! Найдите и активируйте два параметра в меню разработчика Android:

  • Установка через USB
  • Отладка по USB (Настройки безопасности)
Если не включить «Установка через USB» и «Отладка USB (настройки безопасности)», то команды adb shell pm grant будут заканчиваться неудачей!

После активации попробуйте заново выполнить команды adb shell pm grant для повышения привилегий приложению. Все должно заработать как надо!

У вас еще остались дополнительные вопросы? Задавайте их в комментариях, рассказывайте о том, что у вас получилось или наоборот!

Вот и все! Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней! Больше статей и инструкций читайте в разделе Статьи и Хаки Android.