我有一個應用程序,它具有與startUpdatingLocation一起運行的位置管理器。但是,如果它沒有移動的話,我stopUpdatingLocation,標記當前位置爲區域和startMonitoringForRegion像這樣:locationManager:didExitRegion:應用程序運行時未調用
[locationManager stopUpdatingLocation];
CLRegion* region = [[CLRegion alloc] initCircularRegionWithCenter:self.currentLocation.coordinate radius:25 identifier:@"last_loc"];
[self.locationManager startMonitoringForRegion:region desiredAccuracy:kCLLocationAccuracyNearestTenMeters];
[region release];
當應用程序被完全關閉,我退出該地區,的LocationManager:didExitRegion被調用,我繼續我的快樂的方式,像這樣:
- (void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
{
[self.locationManager stopMonitoringForRegion:region];
[locationManager startUpdatingLocation];
}
但是,如果應用程序正在運行,無論是在背景或前景,應用程序將不響應的LocationManager:didExitRegion。我錯過了什麼?
你在iPhone 4硬件上測試嗎?只有iPhone 4硬件支持區域跟蹤。 – timthetoolman 2011-06-02 01:55:40
@timthetoolman,是的,iPhone 4. – 2011-06-02 02:31:55
你是否設置了位置管理器的代表? – timthetoolman 2011-06-02 03:14:28