2017-01-19 2 views
2

Google지도 iOS SDK를 사용하여 현재 위치에 파란색 점을 표시합니다. 나는지도를 인스턴스화를 통해 true로 플래그를 설정 :이 내 현재 위치의 파란색 점을 보여줍니다 수행isMyLocationEnabled가 true로 설정된 경우 GMSMapView는 위치 데이터를 어디에서 가져 옵니까?

self.mapView.isMyLocationEnabled = true 

,하지만 난이 데이터를 업데이트하는 빈도에 대한 정보를 찾을 수 없습니다. 이 옵션으로 위치 업데이트를 수신하는 동안 배터리 사용에 대해 우려하고 있습니다.

  • Google지도 SDK는 자체 CLLocationManager을 사용합니까?
  • 그렇다면 어떤 매개 변수가 사용됩니까? 지속적으로 위치를 업데이트합니까?
  • 어떤 위치 정확도를 사용합니까?
  • 보기 화면을 어떻게 처리합니까?

답변

1

최근 우연히 동일한 질문이 있었으며 Google 문서 또는 어딘가에서 아무 것도 발견되지 않았습니다.

그래서 여기 문제에 대한 내 생각과 관찰, 당신은 유용한 무언가를 찾을 수있다

이 아이폰 OS CoreLocation을 사용하는 것을 제외하고 사용자의 GPS 위치를 얻을 수있는 방법이 없기 때문에 우리가을하는 것처럼 그들은 그것을 사용할 생각
  1. 지도에서 사용자의 위치가 얼마나 정확했는지에 따라 Google지도가 정확하지 않은 경우 약 10 미터의 정확도를 사용한다고 생각합니다. CLLocation 인스턴스 인 myLocation 속성에서 가져올 수있는 실제 정확도입니다. 나는 그것을 시도하지 않았다. 그리고 아마 그것은 사용자 위치를 지속적으로 업데이트하지만 '항상'권한이 있더라도 응용 프로그램을 백그라운드에서 유지하지는 않습니다.
  2. 내 위치 관리자가 꺼져 있고 배경에 해당하는 셀을 채우는 동안 화면에서 벗어 났을 때도 사용자가 에너지 바를 보았습니다. 물론
    SDK로 정확도가 떨어질 수 있지만 UIView 하위 클래스는 표시되거나 숨겨 지는지 여부를 감지 할 수도 있습니다. 내가 찾은 유일한 방법은, 경우에 당신이 질문에 대한 공유 할 수있는 뭔가를 찾을 수 있습니다,
거짓

self.mapView.isMyLocationEnabled = false

희망이 도움에 플래그를 변경했다, 돌아 오기 바랍니다.