Pergunta

É conveniente usar "– reverseGeocodeLocation:completionHandler:" o método de Reverse Geocoding um Local.Mas como obter todos os locais em uma região.

ps.Se há vários lugares em uma região.Como eu poderia usar as informações de região para descobrir todos os lugares?Como o reverse geocoding um local, dada uma coordenada, de retorno de um local.Aqui eu quero dar uma região, de retorno de todos os locais na região.

Foi útil?

Solução

Há um google Geocoder API que retorna JSON , é apenas uma espécie de um serviço da web que usa o método GET

E Este é o Google Gecoder API e Este é o link para o web service e neste link que eu dei o nome da região, como londres.

Nota:Você precisa incluir SBJson biblioteca para o seu código.

No final do link eu ter acrescentado endereço, se você acrescentar o endereço que você precisa para dar o nome da região (ou) se você acrescentar a latitude e a longitude, o que você precisa para dar as coordenadas e ele irá retornar os resultados de acordo.

E o código para chamar a api do google vai ser assim

                //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);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top