이미 ACCESS_FINE_LOCATION이있는 경우 ACCESS_COARSE_LOCATION을 생략 할 수 있습니까?


89

ACCESS_FINE_LOCATION매니페스트에서 이미 권한을 요청하는 GPS 앱이 있습니다 . 이제 .NET Framework가 필요한 라이브러리 (MoPub)를 추가하고 싶습니다 ACCESS_COARSE_LOCATION.

ACCESS_FINE_LOCATION충분 하다고 가정하는 것이 맞 ACCESS_COARSE_LOCATION습니까? 그리고 내 매니페스트에서 제외 할 수 있습니까?

답변:


153

https://developer.android.com/guide/topics/location/strategies.html#Permission

참고 : NETWORK_PROVIDER 및 GPS_PROVIDER를 모두 사용하는 경우 두 공급자에 대한 권한이 포함되어 있으므로 ACCESS_FINE_LOCATION 권한 만 요청하면됩니다. (ACCESS_COARSE_LOCATION에 대한 권한에는 NETWORK_PROVIDER에 대한 권한 만 포함됩니다.)

요컨대 : 예, ACCESS_COARSE_LOCATION이미 정의한 경우 필요하지 않습니다 ACCESS_FINE_LOCATION.


13
+1하지만 이상하게도 Google지도 문서에서는 developers.google.com/maps/documentation/android/…을
alex

3
네트워크 기능은 있지만 GPS는없는 휴대폰일까요?
Nicklas A.

2
@NicklasA. 논리적으로 이것은 "fine"에 "coarse"가 포함된다는 사실에 영향을주지 않아야합니다. 누락 된 공급자는 단순히 누락됩니다. 또한 그 경우에 필요한 경우 Google 문서에서 그렇게 말할 것으로 예상합니다.
ToolmakerSteve 2015 년

9
@alex의 의견에 대한 업데이트 : 이제 Google지도는 하나의 권한 만 요청하면된다고 명시 적으로 표시합니다. developers.google.com/maps/documentation/android-api/location
Klox 2017

15

귀하의 필요에 따라 다릅니다.

권한은 현명한 ACCESS_FINE_LOCATION포함 ACCESS_COARSE_LOCATION. 그러나 한 가지 문제가 있습니다.

ACCESS_COARSE_LOCATION배터리 친화적 인 마지막으로 알려진 위치를 제공합니다. https://developer.android.com/training/location/retrieve-current.html#setup
예를 들어 앱이 위치 기반 추천과 같은 작업을 수행하는 경우 마지막으로 알려진 위치는 충분하다.
이것은이 구글 플레이 서비스에 대한 의존성을

그러나 Pokemon Go와 같은 라이브 / 실시간 위치와 같은 것이 필요 ACCESS_FINE_LOCATION
하면 라이브 / 실시간 위치를 제공합니다. LocationListener
마지막으로 확인한 시간 을 사용해야 합니다. Google Play 서비스가 필요하지 않습니다.


이 권한이 Bluetooth LE 스캔에 유용합니까?
IgorGanapolsky

@ericn 아마도 위치 문제로 나를 도울 수 있습니까? stackoverflow.com/questions/63917764/… NMEA 문장을들을 때 매우 이상한 행동을합니다.
Viktor Apoyan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.