X秒ごとにユーザー座標を取得したい。
アプリデリゲートに入る場所を追加しました。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
...
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
if([CLLocationManager locationServicesEnabled]){
[self.locationManager startUpdatingLocation];
}
...
ここで新しい座標を処理します
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
CLLocation *loc = [locations objectAtIndex:0];
NSDate* eventDate = loc.timestamp;
NSTimeInterval howRecent = [eventDate timeIntervalSinceNow];
if (howRecent < 10)
{
CLLocation* location = [locations lastObject];
double lat = location.coordinate.latitude;
double lng = location.coordinate.longitude;
NSLog(@"lat:%f lng:%f", lat, lng);
...
しかし、アプリがバックグラウンドにあるときにiPhoneの座標を取得し続ける方法がわかりません。私はいくつかのコードを追加する必要があると思います:
- (void)applicationDidEnterBackground:(UIApplication *)application...
しかし、ロケーションをライブに保つために何をすべきかわかりませんか?