권한은 시스템 앱에만 부여됩니다.


98

시스템 권한을 사용 하는 시스템 앱 이 있고 해당 권한이 매니페스트에 나열되어 있습니다. Eclipse는 빌드를 만들려고 할 때 다음 오류를 표시합니다 (명령 줄 빌드가 작동 함).

권한은 시스템 앱에만 부여됩니다.

내 앱에 시스템 권한이 필요하다는 것을 이미 알고 있으며 내 애플리케이션은 루팅 된 휴대폰에서만 사용되기 때문에 문제가되지 않습니다. 그래서 나는이 오류를 억제하고 싶습니다. 누구든지 방법을 알고 있습니까?

편집
내 프로젝트는 이미 명령 줄, 설치, 실행 등에서 잘 컴파일됩니다. 내 문제는 합법적 인 매니페스트 파일에 오류를주는 일식에 관한 것입니다.



@AndroSelva 그것은 관련이 없습니다. 내 프로젝트는 이미 명령 줄에서 잘 컴파일되고 설치되고 실행됩니다. 내 문제는 합법적 인 매니페스트 파일에 오류를주는 일식에 관한 것입니다. IMO는이 경우에만 경고를 생성해야합니다.
Caner

답변:


205

Eclipse에서 :

창-> 환경 설정-> Android-> Lint 오류 검사.

목록에서 ID = ProtectedPermission. 심각도를 오류보다 낮은 값으로 설정하십시오. 이렇게하면 Eclipse를 사용하여 프로젝트를 컴파일 할 수 있습니다.

Android Studio에서 :

파일-> 설정-> 편집기-> 검사

에서을 Android Lint찾습니다 Using system app permission. 확인란의 선택을 취소하거나 오류보다 낮은 심각도를 선택하십시오.


1
감사! -> 설정 -> 안드로이드 스튜디오 1.2, 난 파일에서 이걸 발견 편집기 -> 검사.
Aaron

프로그래밍 방식으로 화면 밝기를 변경하고 싶습니다. 설정에서 Lint를 편집했습니다. 그러나 프로그래밍 방식으로 화면 밝기를 변경하는 동안 일부 보안 예외가 발생합니다. 누구나 Marshmallow 위의 Android 3.1에서이 기능을 구현할 수있는 솔루션이 있습니다. 공유해주세요.
Nithinjith

3
Android Studio 2.1에서 File-> Settings-> Editor-> Inspections로 이동 한 다음 Android> Lint> 정확성을 확장합니다. "시스템 앱 권한 사용"을 선택하고 심각도를 변경하거나 확인란을 선택 취소합니다.
Ezekiel Baniaga

2
Android > Lint > Correctness나를 위해 밑에 있었다.
Beyondo

74

한 인스턴스에 대해서만이 오류를 무시하려면 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"

3
이것이 바로 anwser입니다. 부분적으로 만 필요할 때 전체 검사를 비활성화하는 이유. 감사합니다!
Yoraco Gonzales

당신은 네임 스페이스 ...의 xmlns 추가해야합니다 : 도구 = " schemas.android.com/tools을 "
purplecabbage

13

수시로 동일한 오류가 발생합니다 (매니페스트에서 설치 위치를 "외부 선호"로 설정). 프로젝트를 정리하고 다시 빌드하십시오. 나를 위해 작동합니다.


3

매니페스트에 권한을 추가하면 Eclipse에서 프로젝트로 이동하여 클릭하십시오.

  1. 프로젝트를 클릭
  2. 깨끗한 프로젝트를 클릭하십시오.

k 클린 프로젝트


2
tools:ignore="ProtectedPermissions"

해당 권한에이 속성을 추가해보십시오.


1

Preferences-> EditorEditor-> Inspections-> Android Lint-> Uncheck item Using System app permissio


1

Mac의 Android Studio의 경로 :

Android Studio-> 환경 설정-> 편집기-> 검사

Android 확장-> Lint 확장-> 정확성 확장

시스템 앱 권한 사용 확인란을 선택 취소하십시오.

"적용"-> "확인"을 클릭합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.