현재 CLLocationManager에서 마지막 위치를 가져와야하는 앱을 개발하고 있습니다 (정기적 추적없이). 얼마나 오래되었거나 정확했는지는 중요하지 않습니다. 필요가 없으며 추적을 시작하고 싶습니다. 캐시에서 마지막 위치를 잡아두기 만하면됩니다. IMHO, CLLocationManager는 iOS의 공유 구성 요소이며 일부 앱이 위치 추적을 사용하는 경우 다른 앱은 CLLocationManager.location에서 가장 최근 위치를 사용할 수 있어야합니다. CLLocationManager를 할당/초기화하고 그 위치를 잡는 것만으로도 충분합니다. 그러나 그렇지 않습니다. 나는 iPhone4에서 테스트를 마쳤습니다. Google지도를 시작하고 현재 위치를 확인한 다음 내 응용 프로그램에 갔지만 [[CLLocationManager alloc] init] 위치 속성이 없으면 무효입니다.CLLocationManager에서 마지막으로 알려진 위치를 얻으려면 앱이 위치 추적을 시작해야합니까?
업데이트 : 시도 [locationManager startUpdatingLocation]; 및 [locationManager stopUpdatingLocation]; 그러나 결과는 같습니다. 유일한 해결책은 정기적 인 추적을 시작하는 것입니다.
UPDATE2 : 이상하지만 CLLocationManager의 alloc/init 후에 "앱이 위치 서비스를 사용하려고합니다"라는 경고가 표시되지 않습니다. 여기에 내 코드 조각입니다 : 당신의 locationManager
가있는 경우
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
[locationManager startUpdatingLocation];
[locationManager stopUpdatingLocation];
NSLog(@"%@", locationManager.location); //prints nil
당신이 들여다 추천을 [CoreLocation와 현재 위치를 찾는 방법 (http://stackoverflow.com/questions/6516967/how-to-find- 현재 위치와 함께), 'NSArray'에서 찾은 위치를 저장합니다. –