如何获得仅限英语的Googleapis回复?

时间:2015-02-09 15:43:19

标签: ios objective-c xcode google-maps google-api

我使用 googleapis 服务获取用户的位置,当前城市名称+国家/地区名称:

NSString *urlString = [NSString stringWithFormat:@"http://maps.googleapis.com/maps/api/geocode/xml?latlng=%f,%f&sensor=false",latitude,longitude];

urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

NSURL *url = [NSURL URLWithString:urlString];

NSURLRequest *request = [NSURLRequest requestWithURL:url];

// Send the request
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

我得到一个包含数据的XML文件,而不是使用NSXMLParser来获取必要的信息。 由于某些原因有时,信息是英语,有时不是,我需要 ONLY 在en。< / p>

我尝试使用以下代码覆盖应用程序的语言:

[[NSUserDefaults standardUserDefaults] setObject: [NSArray arrayWithObjects:@"en", nil] forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];

但没有任何反应,我该怎么办?

1 个答案:

答案 0 :(得分:1)

Google Maps API Documentation中,它说:

  

地理编码请求中的可选参数:

     

language - 返回结果的语言。请参阅list of supported domain languages。请注意,我们经常更新支持的语言,因此此列表可能并非详尽无遗。如果未提供语言,则地理编码器将尝试使用尽可能从中发送请求的域的本地语言。

因此,您只需将语言指定为请求中的参数即可。 对于英语:language=en