2016-11-29 5 views
4

Android의 권한 관련 수업을보고 있었는데 몇 가지 질문이 있습니다.Android 권한에 대한 질문

클래스 BasePermission 클래스에는 TYPE_NORMAL, TYPE_BUILTIN 및 TYPE_DYNAMIC의 세 필드가 정의되어 있습니다. 이것들은 무엇을 나타내는가? 필자는 TYPE_DYNAMIC이 addPermission() API 메소드가 앱에서 동적으로 사용 권한을 만들 때 사용되는 것 같지만 다른 두 가지에 대해서는 전혀 확신하지 못합니다. Android는 사용 권한이 생성 된 방식 (시스템, 시스템 앱 또는 타사 앱에 의해 정의 됨)을 추적합니다. PermissionInfo 클래스는 일부 플래그를 추적하는 것으로 보이지만 권한이 어떻게 생성되었는지 직접적으로 일치하는 플래그를 찾을 수 없습니다.

미리 감사드립니다.

답변

1

Faraz가 맞지만 일부 추가 사항이 있습니다. 안드로이드 소스 코드를 탐색 중이 었는데 정보를 찾았습니다.

  1. 는 당신은 추가, 갱신 또는 TYPE_DYNAMIC 권한을 제거 할 수 있습니다.

  2. TYPE_DYNAMIC 권한은 응용 프로그램 개발자가 정의합니다.

  3. TYPE_BUILTIN 권한은 시스템 앱에서만 사용할 수 있습니다.

편집 : TYPE_DYNAMIC 권한 예는 How to use custom permissions in Android? TYPE_BUILTIN는 리눅스 커널 권한에 대한 것 같습니다

+0

이 정보의 출처는 어디입니까? 나는 그것이 옳다고 생각하지 않는다. 권한 및 인터넷 권한에 대한 값도 TYPE_BUILTIN 인 것처럼 보였습니다. –

0

, TYPE_DYNAMIC가와 (addPermission *() API의 방법의 사용을 통해) 어떤 동적으로 생성 권한입니다 TYPE_NORMAL은 정적으로 작성된 다른 권한 (시스템 및 제 3 자)을위한 것입니다.

This link은 시스템 코드에서 이러한 사용 권한이 정의 된 위치를 설명합니다.

관련 문제