в моем приложении я печатаю местоположение в UIsearchbar и после этого вызываю следующий метод
-(void)getLocation
{
NSString *urlString;
if(locationFinder.text!=nil)
{
urlString = [[NSString stringWithFormat:@"http://maps.google.com/maps/geo?q=%@&output=csv", [locationFinder.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]retain];
}
NSLog(@"url:%@",urlString);
NSString *locationString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString]];
NSArray *listItems = [locationString componentsSeparatedByString:@","];
if([listItems count] >= 4 && [[listItems objectAtIndex:0] isEqualToString:@"200"])
{
latitude = [[listItems objectAtIndex:2] doubleValue];
longitude = [[listItems objectAtIndex:3] doubleValue];
}
NSLog(@"latitude: %f longitude:%f",latitude,longitude);
urlString=[NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/json?location=%f,%f&radius=%d&types=%@&sensor=true&key=AIzaSyBbUuE-DprCN-CME1SgcNxyeuDdRrBgkyk",latitude,longitude,mRadius,mTypes];
NSLog(@"url: %@",urlString);
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:180.0];
id urlRequest = [[NSURLConnection alloc] initWithRequest:request delegate:self];
if(urlRequest)
{
responseData=[[NSMutableData data]retain];
NSLog(@"hiiii i m data");
}
}
и реализации некоторого другого метода делегата и анализа данных через jSON
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
[responseData setLength:0];
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
//NSLog(@"DATA:%@",data);
[responseData appendData:data];
//NSLog(@"%@",responseData);
//[responseData release];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
NSLog(@"connection failed:%@",[error description]);
//done.enabled = YES;
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
[connection release];
//NSLog(@"response data:%@",responseData);
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
//NSLog(@"response:%@",responseString);
//[responseData release];
NSDictionary *locationData = [responseString JSONValue];
NSLog(@"ALLKEYS:%@",[locationData allKeys]);
self.responseDataDict=[locationData objectForKey:@"results"];
NSLog(@"locationdata allkeys:%@",[locationData allKeys]);
NSLog(@"name:%d",[responseDataDict count]);
}