마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 M 관련, 사용되지 않는 permission 확인 방법 없을까요??

+1 추천
안녕하세요, 안드로이드 초보 개발자입니다.

장기간 진행중인 안드로이드 프로젝트 앱을 받아 보고 있습니다.

안드로이드 M에 대해서 대응이 필요한 상황인데요.

여기 보니까 퍼미션이 겁나게 많습니다; 개발초기에 걍 안쓰는 퍼미션도 막 넣어놓은게 있는것 같고
원래 썻다가 사용하지 않게 된 퍼미션들도 남겨놓은것 같습니다.

이번에 안드로이드 M os에 대해서 런타임 퍼미션등으로 인해.. 안쓰는 퍼미션들은 지워주고 싶은데요.

이게 어디의 어떤 기능에서 사용되고 있는지를 잘 모르겠습니다. 코드 전체를 다 보자니.. 양이 너무 방대하구요 ㅠ

그렇다고 퍼미션을 제외시키고 빌드를 해봐도 해당기능이 실행되지 않는한 오류가 뜨질 않구요 ㅠ

 

요약하자면... 매니페스트에 추가해놓은 퍼미션들이 실제로 사용되는 퍼미션인지 확인할수 있는 방법이 없는지 궁금합니다.
(검색어라도... )

 

다른 퍼미션은 그렇게 못한다하더라도 android.permission.WRITE_SETTINGS 권한은 어디서 쓰이는지 찾아야할것 같은데요. (이 권한을 쓰려면 런타임 퍼미션 방식이 아니라.. GPS 켤때처럼 설정화면으로 이동시켜야하더군요 ㅠ)

이거에 대한거라도 찾을 수 있는 빙법이 없는지 궁금합니다.

혹시 관련 내용 아시는분, 조언 부탁드립니다!
블랙이요블랙 (12,860 포인트) 님이 2015년 9월 17일 질문

1개의 답변

0 추천
android 6.0 대응인 경우 모든 퍼미션을 검토할 필요는 없습니다.

일부 퍼미션만 사용자가 컨트롤할 수 있습니다.

http://developer.android.com/preview/features/runtime-permissions.html

예를 들어 android.permission.WRITE_SETTINGS는 사용자가 컨트롤 할 수 없으므로 신경쓰지 않아도 됩니다.
익명사용자 님이 2015년 9월 17일 답변
6.0의 경우 몇몇 권한에 대해서는 런타임 퍼미션이 아닌.. 다른 방식으로 권한을 받게 하고 있습니다 ㅠ
제가 찾아본바로는 SYSTEM_ALERT_WINDOW와 WRITE_SETTINGS가 있습니다.
SYSTEM_ALERT_WINDOW 같은 경우 권한을 추가해놓아도 denied로 됩니다.
런타임 퍼미션 방식으로 reqeust해봐도 권한요구팝업이 뜨지 않구요
그래서 6.0(api level 23)에 새롭게 추가 ACTION_MANAGE_OVERLAY_PERMISSION을 사용해서 설정창으로 이동시킨다음에 사용자가 On을 해줘야 권한 사용이 가능합니다. 즉, 런타임퍼미션과 다른방식으로 권한허용을 사용자로부터 얻어야하죠..
WRITE_SETTINGS도  ACTION_MANAGE_WRITE_SETTINGS로 설정화면으로 이동시켜서 On을 시켜야 권한 사용이 정상적으로 되는것 같습니다.
그래서.. 해당 권한을 사용하고있는지 아닌지 정확히 알아야 할것 같습니다.
꼭 필요한데 사용하고 있으면 설정화면으로 보내고
사용하고 있지 않거나, 꼭 필요하지 않으면 빼야할것 같거든요.

아무튼, 답변해주셔서 감사합니다.
...