안드로이드 앱이 전화걸기 퍼미션을 요구하는 이유

지랄한다


일반인 입장에서는 충분히 속이 뒤틀리는 상황이겠지만, 대강 짐작이 가는 부분이 있었다.

그래서 대충 만들었던 테스트 앱을 살짝 바꿔서 테스트를 진행해 봤다.

해당 권한은 아마 이 부분일 것이다.



그럭저럭 신형 폰(1.5년 정도 묵은)에서는 대부분 확인 다이얼로그를 띄운다.



해당 함수를 실행하면 위와 같은 다이얼로그가 뜬다.


딱히 지 좆대로 전화 걸려는 이유로 저걸 하는 건 아니고(맘대로 전화 걸기는 다른 권한이 필요함), 표현 방식이 좀 틀려먹은 것. read phone state는 조금 규모가 있는 앱에선 여기저기 써먹는 게 많은 권한이기 때문에 앱 시작단계에서 저걸 요구하는 건 100점 만점은 아니지만 그렇다고 오답도 아니다. 

그러니까 좀 억울하게 욕을 먹은 것도 없지 않아 있는 셈.


그렇다면 저걸 체크하는 사유라고 했던 '버전 체크'라는 것은 뭐냐 하면은....

밑부분에 버전 네임이라는 게 있는데, 보통은 저거랑 서버에서 받아온 버전명이랑 비교해서 구버전이면 업데이트를 유도하는 것. 사실 구글 플레이에서 재깍재깍 업데이트를 해 주는 경우가 많다보니 요즘은 별 필요 없는 파트이기도 하지만....


해당 버전 넘버를 구하는 처리를 해 봤는데


권한을 따로 주지 않아도 그냥 잘 받아온다.


앞서 말했듯이 여기저기 쓸 데가 많은 권한인 것도 있어서, 아마 PL이나 PM이
'이런 문의가 올라왔는데 왜 그럴까요?'
라고 개발자한테 물어봤을 때 개발자는 귀찮으니까

'그냥 버전 체크 같은 거 할 때 필요해요~'

라고 대충 둘러댔을 확률이 높다.

뭐 실무라는 게 대충 이렇잖아. PL이나 PM이 저런 걸 꿰차고 있을 리도 없고 그렇다고 하니까 그런가보다 하고 답변에 적은 거겠지.

다시 말하자면 딱히 음흉한 의도가 있어서라기보다는 정말로 필요한 데가 많은 권한인데, 표현 방식이 좀 저렇다가보니 오해를 산 것이라고 보면 됨.


덧글

  • 이게 2017/09/04 19:05 # 삭제 답글

    권한설정을 여기저기 많이주다보니 정작 설정이름과는 조금 다르게 되어버리기도 하지요.
    사용자에게 너무 정보를 많이 주다보니 이런 혼란이 생긴점도 있다고 보내요. 그런거보면 iOS는 그런건 잘 숨겨서 잘하는듯.
댓글 입력 영역