Подтвердить что ты не робот

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

Я хочу добавить это разрешение в свой Android-манифест:

<uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />

Но после того, как я вставляю это разрешение в свой манифест, он проверяет красное подчеркивание и говорит:

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

Что я могу сделать?

4b9b3361

Ответ 1

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

Для вашей информации есть 2 типа приложений для Android: система и пользователь

Пользовательские приложения - это все ваши обычные установки приложений через Google Play Store, Amazon Appstore или загрузку. Они входят в раздел /data вашего телефона Android, который является частью внутренней памяти, доступной для пользовательских данных и приложений.

Системные приложения - это, в основном, приложения, которые устанавливаются вместе с вашим ПЗУ. В стандартной пользовательской среде Android пользователь не имеет права на запись в/системный раздел и, следовательно, невозможно установить или удалить системные приложения.

Чтобы установить приложение как системное приложение на Android-устройство, ваше устройство должно быть укоренено или установлено специальное восстановление (или оба).

Говоря это, эта ошибка на самом деле неверна, потому что у вас есть действующий код и компиляция должна работать. Было бы лучше, если бы оно дало предупреждение вместо этого. В Eclipse вы можете легко исправить это. Просто перейдите по ссылке:

Окно → Настройки → Android → Проверка ошибок Lint.

Найдите ProtectedPermission из списка и установите степень серьезности на что-то другое, кроме ошибки (например, информация). Таким образом ваш проект будет компилироваться.

Ответ 2

MODIFY_PHONE_STATE - это только системное разрешение. Системные приложения либо предварительно установлены в системную папку, либо скомпилированы изготовителем с использованием их сертификата безопасности.

Следовательно, если вы пытаетесь это сделать, вы пытаетесь использовать API, которые больше не поддерживаются. В Android версии 2.3+ вы можете отслеживать входящие звонки, но блокировка не разрешена (я думаю, из ссылки, которую вы опубликовали, то, что вы пытаетесь сделать).

Проблемы с Android, если вам нужно следовать: Проблема 15022 и Проблема 14789

Ответ 3

Эта ошибка появляется в SDK 19, когда вы меняете манифест. Очищайте и стройте проект. Он должен очистить эту ошибку.

Ответ 4

просто очистите проект, все будет хорошо:

project > Очистить...

Ответ 5

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

Просто очистить проект и восстановить это все

Ответ 6

Найти ProtectedPermission из списка в

Window -> Preferences -> Android -> Lint Error Checking.

и установите серьезность для чего-то другого, кроме ошибки (например, информация). Таким образом ваш проект будет компилироваться.

Ответ 7

Существует четыре типа разрешений

Regular
Dangerous
Signed
Signed or System

The first two can be used by Simple Apps Другие два могут использоваться только приложением, которое создается в рамках