API文档
https://developers.google.com/maps/documentation/geocoding/?hl=zh-CN#ReverseGeocoding
实际查询地址
http://maps.googleapis.com/maps/api/geocode/json?latlng=31.186680,121.619644&sensor=true
返回json数据把上述地址在浏览器中即可显示。
ios解析地址的问题:
如果只要获取城市名称,通过返回的数据可以看的出,倒数第一级是国家、倒数第二是省份、倒是第三是城市:
所以如果要获取城市名称,可以用下面方法:
TTURLJSONResponse *response = request.response; NSDictionary *dict=response.rootObject; [BTProjectUtil showLog:@"dict description : %@",[dict description]]; NSString *status =StringEmpty; status =[dict objectForKey:@"status"]; if ([status isEqualToString:@"OK"]) { NSArray *array =[dict arrayForKey:@"results"]; NSDictionary *dict_1 = [array objectAtIndex:([array count] - 3)]; NSArray *array_1 =[dict_1 arrayForKey:@"address_components"]; NSDictionary *dict_2 = [array_1 objectAtIndex:0]; NSString *short_name = [dict_2 objectForKey:@"short_name"]; [BTProjectUtil showLog:@"===%@",short_name]; [hotelCity setText:short_name]; //如果要按照级别显示当前的位置,可以用下面的方法 // for (int i=0; i < [array count]; i++) { // // NSDictionary *dict_1 = [array objectAtIndex:i]; // // NSArray *array_1 =[dict_1 arrayForKey:@"address_components"]; // // NSDictionary *dict_2 = [array_1 objectAtIndex:0]; // // NSString *short_name = [dict_2 objectForKey:@"short_name"]; // // [BTProjectUtil showLog:@"===%@",short_name]; // // } }