2017-01-30 1 views
2

위치 모니터링을 위해 시작 모니터링에 중요한 위치 변경이 무엇인지 알고 싶습니다. GPS 또는 Wifi/인터넷입니까? 내 이해는 휴대 전화 또는 Wi-Fi를 사용하여 기기가 크게 이동했는지는 알지만 모르겠지만 위치를 정할 때는 GPS를 사용하여 위치를 파악합니다.startMonitoringSignificantLocationChanges가 위치 전달을 위해 사용하는 것

내 결과는 다음과 같습니다 : City Train에서 30 킬로미터를 여행했지만 배경이없는 곳에서 여행을하는 동안 Wifi 및 Cellular 데이터가 꺼졌습니다. 따라서 Significant가 GPS만으로 위치 정보를 제공하지 못하는 경우 알려주십시오.

답변

1

이전에는 건물 위치 앱 이었지만 GPS는 startUpdatingLocation()이 호출되었을 때만 사용되는 것으로 가정했습니다. 문서를 두 번 확인한 후, 애플은 명시 적으로 중요한 LocationChanges가 GPS를 사용할 수 있는지 여부를 명시하지는 않지만 절전 옵션이며, 문서에서 "셀룰러 하드웨어가 필요합니다"라고 명시되어 있으므로 가정 (및 당신)은 정확합니다. 확실히 알고있는 하드웨어 전문가가있는 경우에 대비하여 조금 남겨 두겠습니다. 원하는 문서 : https://developer.apple.com/reference/corelocation/cllocationmanager

0

모든 위치 기능과 마찬가지로 셀, Wi-Fi 및 GPS의 조합을 사용합니다. 셀의 사용은 기본입니다. 배터리 소모를 방지하기 위해 GPS 사용을 최소화하는 것이 좋습니다.

셀이 꺼진 상태에서도이 기능을 사용할 수 있습니다. 실제로 코드에서 셀이 해제 된 significantLocationChangeMonitoringAvailable을 제대로 확인하면 직관적으로 대답을 false으로 예상합니다.

(또한 대리자와 위치 관리자가 없다면 당신이 어떤 이벤트를하지 않습니다.)

0

으로는 "Hows does Significant Location Change work?"이 답변에 설명 된 (그리고 WWDC에 2013에서 2015 사이에서 비디오) 중요한 위치 변화 모니터링에는 Cell Tower Triangulation이라는 기술이 사용됩니다.

GPS 삼각 측량과 거의 같은 메커니즘으로 생각할 수 있습니다. 단, 셀룰러 하드웨어는 실제 위성에서 신호를 얻기 위해 GPS 하드웨어를 발사하는 대신 근처의 셀 타워에서 거리를 측정하는 데 사용됩니다.

내 경험에 비추어 볼 때이 방법은 정확도가 약입니다. 1000m. GPS 하드웨어를 사용하지 않으므로 배터리 효율이 향상됩니다. 대략적인 위치 업데이트에 좋습니다. 발표자가이 기술에 대한 지나친 참조를하는 WWDC 2013 세션 Harnessing iOS to Create Magic in Your Apps을 참조하십시오.

+0

나는 Cellular 삼각 측량을 사용하여 위치 변경 이벤트를 생성하고 10 초 동안 GPS를 켜고 GPS를 사용하여 위치를 가져 오는 느낌을 받았습니다. 그러나이 기술을 사용하여 테스트하는 동안 위치 업데이트를 거의받지 못했지만 어떤 것도받지 못했습니다. 셀룰러 데이터와 Wi-Fi가 꺼져 있었고 셀룰러 네트워크와 GPS를 사용할 수 있었지만 위치 제공에 충분하지 않았기 때문일 수 있습니다. 이것에 대한 설명이 있거나 정상적인 것입니다. –

+0

iOS 9 이상에서는 (requestLocation) [https://developer.apple.com/reference/corelocation/cllocationmanager/1620548-requestlocation] API를 사용하여 GPS 하드웨어에서 높은 정확도의 위치 픽스를 얻을 수 있습니다. 그 후에 위치 관리자가 자동으로 꺼집니다. 또한 plist, setAllowsBackgroundUpdates, 위치 인증 등을 업데이트하는 것과 관련하여 많은 고려 사항이 있습니다. 또한 upvote를 잊지 마세요 :) – zakishaheen

관련 문제