這是我的代碼在我AppDelegate類爲什麼在iPhone SDK 4.0中未調用CLLocationManager委託?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = 1000; // 1 Km
locationManager.desiredAccuracy = kCLLocationAccuracyKilometer;
[locationManager startUpdatingLocation];
}
這是委託方法我在我的AppDelegate類
//This is the delegate method for CoreLocation
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
//printf("AppDelegate latitude %+.6f, longitude %+.6f\n", newLocation.coordinate.latitude, newLocation.coordinate.longitude);
}
其在3.0工作,3.1,3.1.3,但它不適用於4.0模擬器和設備。
是什麼原因?
感謝@Scott Christopherson提供了一些積極的方法.....但是我們仍然成爲木偶,每次有新的iPhone SDK發佈時都必須更改我們的代碼。總是會發現某些方法已被棄用或無法正常工作... – Biranchi 2010-06-17 05:07:13
Thanks @Scott Christopherson請投票結束這個問題....因爲沒有人可以解決這個問題... – Biranchi 2010-06-17 05:08:34
面對同樣的問題,你確定需要40秒才能更新位置嗎? – 2010-07-08 06:03:14