[안드로이드] 퍼미션을 선언하고 강제하기

반응형



이어지는 글
보안을 위한 퍼미션             
유저 ID 와 파일 접근    
퍼미션 사용하기          
퍼미션을 선언하고 강제하기    ◀ 현재 위치
manifest 에 퍼미션 강제하기
임의의 퍼미션과 URI 퍼미션




읽기전에 손가락 한번 클릭~ >_<

고마워요 ~ Chu ~ ♥




퍼미션을 선언하고 강제하기

우선, 퍼미션을 사용하기 위해서는 하나 이상의 <permission> 태그를 사용해서 매니페스트 파일에 그것들을 선언해야 합니다.

예를들어, 자신의 액티비티들 중에서 하나를 시작할 수 있는가를 제어하길 원하는 어플리케이션이 있다면, 아래와 같은 방식으로 이런 작업에 대한 퍼미션을 선언할 수 있습니다.





사용자가 퍼미션을 요구하는 어플리케이션들을 어떻게 알게되는지, 또는 해당 퍼미션을 보유하는것이 누구에게 허용되는지를 시스템에 알려주기 위해서는 <protectionLavel> 속성을 사용하세요.

여기에서 <permissionGroup> 속성은 선택사항이며, 단지 시스템이 사용자에게 퍼미션을 표시하는것을 돕는 역할을 합니다. 일반적으로 표준 시스템 그룹을 이곳에 설정할 수 있고, 드문 경우겠지만 직접 정의한것을 설정할 수도 있다고 합니다.

사용자에게 보여지는 퍼미션 UI를 단순화하려면, 기존에 존재하는 퍼미션 그룹을 사용하는것이 권장됩니다.

퍼미션을 위해서는 라벨(label) 과 설명(description) 두 가지를 제공해야 합니다.


이것은 문자열 리소스로서,
android:label - 사용자가 퍼미션 리스트를 볼 때 표시됩니다.
android:description - 한 개의 퍼미션을 상세히 볼 때 표시됩니다.

라벨은 퍼미션이 보유하고있는 기능의 핵심 부분을 몇개의 단어로 기술할 수 있게 간결한게 좋겠죠?
설명은 그 퍼미션을 보유한 것에게 무엇이 허용되는지를 설명하는 두 개의 문장으로 기술됩니다.
첫 번째 문장은 퍼미션을 설명하는 것이며, 두번째 문장은 어플리케이션에 해당 퍼미션이 부여되었을 때 발생할 수 있는 나쁜 영향은 무엇인지를 사용자에게 알려주는게 좋습니다.



CALL_PHONE 퍼미션에 대한 라벨과 설명 예제



shell 명령어인 - adb shell pm list permissions - 을 사용하면, 시스템에 현재 정의되어있는 퍼미션들을 볼 수 있습니다. 특히 " -s " 옵션을 덧붙이게 되면 사용자가 퍼미션을 보는 방식과 비슷한 형식으로 퍼미션을 보여줍니다!





주의하실 점!!!!!!!!!!!!!!!!!!!!!!
adb shell pm list permissions  에서 퍼미션 끝에 's' 를 꼭 붙이세요!!
"permission" 아니죠 ~ "permissions" 맞습니다~^^;


끝~~









관련글
[안드로이드] 퍼미션 사용하기
[안드로이드] 유저 ID와 파일 접근
[안드로이드] 보안을 위한 퍼미션(Permission)
[안드로이드] 어플리케이션 구조
[안드로이드] 안드로이드 매니페스트 파일





반응형

댓글

Designed by JB FACTORY