5

PlacePicker는 com.google.android.gms:play-services-places:9.4.0에 추가 된 유용한 위젯입니다. 여기에서 설명을 찾으십시오. PlacePickerAndroid PlacePicker에 ACCESS_FINE_LOCATION 권한이 필요하지 않은 이유는 무엇입니까 (!)?

문서에 명확하게 작동하려면 ACCESS_FINE_LOCATION 권한이 필요합니다.

마시맬로 이상에서는 사용자에게이 권한을 부여해야합니다.
하지만이 작업을 수행하지 않으면 작동하는 것 같습니다!
내 애플은

  • 하지
  • 하지 언제든지이 권한을 부여 할 사용자에게 AndroidManifest를에 권한을 정의 키지도 API를 제공한다

그러나 마시맬로 장치에서 앱 실행하기 PlacePicker를 시작하면 가능합니다.

  • 정확하게 장소를 선택하십시오 (API 키 없이는 불가능 함).

사람이 확인할 수 또는이 위젯이 적절한 권한없이 작동하는 이유에 대한 설명이 부여 (API 키없이 가능)을 MyLocation - 버튼을 통해 "내 위치"로 이동?

+0

이유를 알아야하며 ACCESS_FINE_LOCATION – pandalion98

답변

1

질문은 거의 1 년이나되었지만 다른 사람을 도울 수 있도록 동일한 답변을 찾으려고했습니다.

왜냐하면 PlacePicker는 "의도 기반 요청"으로 작동하기 때문입니다. 설명서는 그다지 명확하지 않지만,

1 : 앱이 작동하는 데 필요한 권한 만 사용하십시오. 권한 사용 방식에 따라 중요한 정보에 대한 액세스에 의존하지 않고도 (시스템 의도, 식별자, 전화 통화의 배경) 필요한 다른 방법을 사용할 수 있습니다. Source

그리고 여기에 몇 가지 단서 제공 : 사용자 데이터에 대한 액세스에 대한 요구 사항은 드문 경우

을 - 사용자가 런타임 대화 각각 제시하는 즉, 그것은 허용 할 수 없을 정도로 혼란이 아니다 데이터에 액세스해야하는 시간 - 인 텐트 기반 요청을 사용할 수 있습니다. Android는 인 텐트 기반 요청이 발행 된 시점에 사용자가 앱과 공유 할 대상을 선택하기 때문에 애플리케이션이 권한을 요구하지 않고 사용할 수있는 시스템 인 텐트를 제공합니다. Source

나는 그것을 밖으로 검사 권한은 내가 문서에 따라 권한이 종류를 사용 MediaStore과 의도 기반 권한을 사용 할 수 있다고 생각 PlacePicker와 결과를 비교, 산들 바람과 롤리팝 장치와 사용 사례를 냈어요 :

예를 들어, 의도 된 동작 유형의 MediaStore.ACTION_IMAGE_CAPTURE 또는 MediaStore.ACTION_VIDEO_CAPTURE를 사용하면 Camera 객체를 직접 사용하거나 권한이 필요한 이미지 나 비디오를 캡처 할 수 있습니다. 이 경우 시스템 의도는 이미지를 캡처 할 때마다 사용자를 대신하여 사용자의 허가를 요청합니다. 예를 들어, 의도 한 동작 유형의 MediaStore.ACTION_IMAGE_CAPTURE 또는 MediaStore.ACTION_VIDEO_CAPTURE를 사용하여 Camera 객체를 직접 사용하거나 권한이 필요한 이미지 나 비디오를 캡처 할 수 있습니다. 이 경우 시스템 의도는 이미지를 캡처 할 때마다 사용자를 대신하여 사용자의 허가를 요청합니다. Source

관련 문제