ロケーション クラスをデリゲート クラスとして使用し、AppDelegate を使用してロケーションを更新しています。2 つのケースで位置情報が必要です。1 つは彼が最初に私のアプリケーションにサインインしたとき、もう 1 つはバックグラウンドから来たときです。私はUILocation
最初のケースでこのように使用しています:
locationController = [[UILocation alloc] init];
locationController.delegate = self;
locationController.locationManager.desiredAccuracy = kCLLocationAccuracyBest;
locationController.locationManager.distanceFilter = kCLDistanceFilterNone;
[locationController.locationManager startUpdatingLocation];
2番目のケースでは、単純に:
[locationController.locationManager startUpdatingLocation]
私のデリゲートメソッドで:
- (void)locationUpdate:(CLLocation *)location
私のデリゲートクラスでは、これを行っています:
[locationController.locationManager stopUpdatingLocation];
緯度と経度を取った後。ただし、これを呼び出した後も更新されます。
私は試した
locationController.locationManager=nil;
locationController.locationManager.delegate=nil
更新を停止した後。しかし、この後 startUpdateLocation を呼び出すと、デリゲート メソッドは呼び出されません。誰かが私が間違っていることを指摘できますか?