Разрешение предоставляется только системному приложению

У меня есть системное приложение, использующее системные разрешения, и эти разрешения перечислены в манифесте. 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"

Попробуйте добавить этот атрибут к этому разрешению.

Когда ваше разрешение на добавление в манифесте, затем в затмении перейти к проекту и нажмите

  1. нажмите на проект
  2. нажмите на чистый проект, вот и все

K на чистый проект

Путь в Android Studio на Mac:

Android Studio -> Настройки -> Редактор -> Инспекции

Разверните Android -> Разверните Lint -> Разверните правильность

Снимите флажок " Использование разрешения системного приложения".

Нажмите "ПРИМЕНИТЬ" -> "ОК".

Предпочтения -> EditorEditor -> Проверки -> Android Lint -> снять отметку с пункта "Использование системного приложения" permissio

Другие вопросы по тегам