내 앱이 15 분마다 위치를 얻고 서버에 위치 정보를 보내주기를 원합니다. 서버에서 위치를 비교하고 클라이언트에 대한 응답을 알림 (거의 푸시 알림과 유사하지만 내 서버에서)으로 보냅니다.주기적으로 위치를 얻고 백그라운드에서 서버로 위치를 보내는 방법 ios9
답변
(앱 배경에있는 경우에도.)
self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
if ([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)])
{
[self.locationManager requestAlwaysAuthorization];
}
참고 : requestAlwaysAuthorization은 배터리 사용량이 많아서 앱 리뷰어가 앱을 사용하여 ap 증명. 또한 필요한 배경 모드에서 "위치 업데이트"가 선택되어 있는지 확인하십시오.
당신은 15 분을 결정하고 위의 CLLocationManager에서 위치를 얻을 수있는 NSTimer를 사용할 수 있습니다.
그런 다음 백그라운드 작업을 사용하여 서버로 위치를 업데이트 할 수 있습니다. 당신이 의심이있는 경우
당신은 아래 링크를 따라 할 수 http://www.creativeworkline.com/2014/12/core-location-manager-ios-8-fetching-location-background/ http://mobileoop.com/background-location-update-programming-for-ios-7 Periodic iOS background location updates
apple doc을 살펴보십시오.
가이드에서 몇 가지 핵심 사항이 있습니다. Apple 설명서의 다음 섹션에 관심이 있습니다.
중요한 변경 위치 서비스는 고정밀 위치 데이터가 필요없는 앱에 적합합니다. 이 서비스를 사용하면 사용자 위치가 으로 크게 변경된 경우에만 위치 업데이트가 생성됩니다. 따라서 소셜 앱 또는 사용자가 에 중요하지 않은 위치 관련 정보를 제공하는 앱에 이상적입니다. 업데이트가 발생했을 때 앱이 일시 중지되면 시스템에서 업데이트를 처리하기 위해 백그라운드에서 깨어납니다. 앱이이 서비스를 시작하고 이 종료 된 경우 새 위치를 사용할 수있게되면 앱이 자동으로 앱을 다시 실행합니다. 이 서비스는 iOS 4 및 나중에 사용할 수 있으며 휴대 전화 라디오가있는 기기에서만 사용할 수 있습니다. 구현 자세한 내용은
는 모습을 가지고 Getting location events background(ios)
가 대단히 감사합니다 ... 난 https://github.com/voyage11/Location을 사용하고 나를 도와. .. 사과 평론가로부터 받아 들일 수 있기를 바랍니다. –