2016-09-17 4 views
0

앱이 전경, 배경 또는 일시 중지 상태 인 경우에도 앱 상태와 상관없이 사용자가 특정 거리 (500m 또는 1km)를 이동할 때마다 알림을 받고 싶습니다. API 호출을 통해 사용자 좌표를 서버로 업데이트했습니다.앱이 사용자가 이동 한 거리를 기반으로 서버를 업데이트하는 방법은 무엇입니까?

이것을 구현하는 올바른 방법은 무엇입니까?

+0

확인이 https://developer.apple.com/library/content/documentation/Performance/Conceptual/EnergyGuide-iOS/LocationBestPractices.html –

+0

및 애플 리케이션 내가이 @NazmulHasan 다음은 –

+0

작동하지 중단 할 때 나는 확신 오늘 테스트 한 결과 나는 그것이 정지 된 상태에서도 작동한다는 것을 확신 할 수 있습니다. 정확한 위치 변경을 통해 위치를 업데이트하기 위해 0.6에서 1.4 km 범위의 업데이트 된 범위가 정확하지는 않습니다. –

답변

1

전경/배경에 대해 앱이 일시 중지 상태 인 경우 가능하지 않다고 생각합니다. 그럴 수 있습니다.

앱을 배경으로 타이머를 사용하여 위치를 확인할 수 있습니다. 다음 repo를 확인하시기 바랍니다, 당신은 어떻게 할 생각을 얻을 것이다. https://github.com/voyage11/Location

+0

[apple location document] (https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/LocationAwarenessPG/ CoreLocation/CoreLocation.html). 앱이 중요한 위치 변경 및 지역 모니터링을 모니터링하여 일시 중지 모드에서 위치 업데이트를 제공하는 경우이 링크 앱에서 언급 한대로 앱을 자동으로 다시 시작할 수 있습니다. –

1

전경/배경 모드에서만 위치에 액세스 할 수 있습니다. 백그라운드 위임으로 전화를 걸려면 startMonitoringSignificantLocationChanges으로 전화해야합니다.

이 방법은 현재 위치와 이전 사이의 500m 변경 후에 위치 변경과 500m 위치 변경을 확인합니다.

동일한 검색어를 사용하는 경우 알려주세요.

감사합니다.

+0

하지만 사과의 문서에 따르면 앱은 중요한 위치 변경이나 지역 모니터링을 알릴 때 자동으로 다시 시작됩니다. Apple에서이 메모를 읽으십시오. - 참고 : 앱이 사용자 또는 시스템에 의해 종료 된 경우 새로운 위치 업데이트가 도착하면 앱이 자동으로 앱을 다시 시작하지 않습니다. 위치 업데이트 전달이 재개되기 전에 사용자가 앱을 명시 적으로 다시 실행해야합니다. 앱을 자동으로 다시 시작하는 유일한 방법은 지역 모니터링 또는 중요한 변경 위치 서비스를 사용하는 것입니다. –

+0

과 중요한 위치 변경이있는 또 다른 문제점은 거리 필터를 고려하지 않는다는 것입니다. 이전 위치 업데이트에서 위치가 500m 이상 바뀌면 위치 업데이트를 제공합니다. –

+0

귀하의 요구 사항에 따라 그 문제가 해결 될 것입니다. 당신이 1km의 변화 거리에 행동을 수행하려는 경우. 마지막으로 업데이트 된 위치를 저장하고 두 위치 사이의 거리가 1km를 초과하면 마지막 위치를 저장하고 작업을 수행하여 새 위치를 확인할 수 있습니다. – MinuMaster