如何用英语在iPhone中获取用户的城市和国家

时间:2013-02-04 08:39:10

标签: iphone ios reverse-geocoding clgeocoder

我使用以下代码在Iphone中获取用户的城市和国家/地区。

CLLocation *location = // Some location


 [[[CLGeocoder alloc] init] reverseGeocodeLocation:location completionHandler:^(NSArray *placemarks, NSError *error) {}];

它可以工作,但问题是它以指定的语言返回值。例如,如果用户当前的国家/地区是阿联酋和迪拜城市,则它会将值设为دبي和لإمارات。我希望用英语获得这些价值,例如迪拜和阿拉伯联合酋长国。

1 个答案:

答案 0 :(得分:3)

使用此代码获取详细信息。

#define REVERSE_GEO_CODING_URL @"https://maps.googleapis.com/maps/api/geocode/json?"

    NSString *urlStr = [NSString stringWithFormat:@"%@latlng=%@,%@&sensor=true",REVERSE_GEO_CODING_URL,latitude,longitude];

        DLog(@"%@",urlStr);
        NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
        NSString *json = [BKAPIClient handleConnection:request];
        [request release];
        if (json)
            return (NSMutableDictionary *)[json JSONValue];

我使用沙特阿拉伯的latlong进行了测试,并返回英文地址。

请参阅此link,其中提供了沙特阿拉伯某处的地址。