Найти все местоположения в регионе с помощью методов CLGeocoder

Удобно использовать метод «– reverseGeocodeLocation:completionHandler:» для обратного геокодирования местоположения. Но как получить все локации в регионе.

пс. Если в регионе несколько мест. Как я могу использовать информацию о регионе, чтобы узнать все места? Например, обратное геокодирование местоположения по заданной координате возвращает местоположение. Здесь я хочу указать регион, вернуть все местоположения в регионе.


person lu yuan    schedule 20.05.2012    source источник
comment
Можете ли вы быть более ясным, пожалуйста?   -  person Charan    schedule 20.05.2012


Ответы (1)


Существует Google Geocoder API, который возвращает JSON. Это просто своего рода веб-сервис, использующий метод GET.

И Это Google Gecoder API и Это ссылка на эту веб-службу, и в этой ссылке я указал название региона как Лондон.

Примечание. Вам необходимо включить библиотеку SBJson в свой код.

В конце этой ссылки я добавил адрес, если вы добавляете адрес, вам нужно указать название региона (или), если вы добавляете широту и долготу, вам нужно указать координаты, и он вернет результаты соответственно.

И код для вызова google api будет таким

                //Call the Google API
                NSString *req = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?sensor=false&address=%@", esc_addr];
                NSLog(@"The get address is %@", req);
                //Pass the string to the NSURL
                NSString *result = [NSString stringWithContentsOfURL:[NSURL URLWithString:req] encoding:NSUTF8StringEncoding error:NULL];
                NSLog(@"The result is %@", result);
                //Initialize the SBJSON Class
                SBJSON *parser = [[SBJSON alloc] init];
                NSError *error = nil;
                //Get the resullts and stored in the address array
                addressArray = [parser objectWithString:result error:&error];
                //Get the latitude values for the given address
                NSDictionary *dict = [[[addressArray valueForKey:@"results"] valueForKey:@"geometry"] valueForKey:@"location"];
                self.latitudeValue = [[dict valueForKey:@"lat"] objectAtIndex:0];
                self.longitudeValue = [[dict valueForKey:@"lng"] objectAtIndex:0];
                NSLog(@"LAT : %@",self.latitudeValue);
                NSLog(@"LONG : %@",self.longitudeValue);
person Charan    schedule 20.05.2012