Разрешение предоставляется только системному приложению
У меня есть системное приложение, использующее системные разрешения, и эти разрешения перечислены в манифесте. Eclipse выдает следующую ошибку, когда я пытаюсь сделать сборку (сборка из командной строки работает):
Разрешение предоставляется только системным приложениям
Я уже знаю, что моему приложению требуются системные разрешения, и для меня это не проблема, потому что мое приложение будет использоваться только на рутованных телефонах. Вот я и хочу эту ошибку подавить, кто-нибудь знает как?
РЕДАКТИРОВАТЬ
Мой проект уже хорошо компилируется в командной строке, устанавливается, запускается и т. Д. Моя проблема в том, что eclipse выдает ошибку для правильного файла манифеста.
6 ответов
В Затмении:
Окно -> Настройки -> Android -> Проверка ошибок Lint.
В списке найдите запись с ID = ProtectedPermission
, Установите уровень серьезности ниже, чем ошибка. Таким образом, вы все еще можете скомпилировать проект, используя Eclipse.
В Android Studio:
Файл -> Настройки -> Редактор -> Проверки
Под Android Lint
, найти Using system app permission
, Либо снимите флажок, либо выберите уровень серьезности ниже, чем ошибка.
Чтобы игнорировать эту ошибку только для одного экземпляра, добавьте tools:ignore="ProtectedPermissions"
приписать к вашей декларации разрешения. Вот пример:
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
tools:ignore="ProtectedPermissions" />
Вы должны добавить tools
пространство имен в манифесте корневого элемента
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
Время от времени появляется одна и та же ошибка (когда я устанавливаю место установки, чтобы "выбрать внешний" в манифесте). Просто очистите и перестройте проект. Работает для меня.
tools:ignore="ProtectedPermissions"
Попробуйте добавить этот атрибут к этому разрешению.
Когда ваше разрешение на добавление в манифесте, затем в затмении перейти к проекту и нажмите
- нажмите на проект
- нажмите на чистый проект, вот и все
K на чистый проект
Путь в Android Studio на Mac:
Android Studio -> Настройки -> Редактор -> Инспекции
Разверните Android -> Разверните Lint -> Разверните правильность
Снимите флажок " Использование разрешения системного приложения".
Нажмите "ПРИМЕНИТЬ" -> "ОК".
Предпочтения -> EditorEditor -> Проверки -> Android Lint -> снять отметку с пункта "Использование системного приложения" permissio