iPhone应用程序将位置坐标传递到谷歌放置字符串

时间:2011-08-10 22:47:00

标签: iphone core-location

在我的应用程序中,我可以获取当前位置的坐标。但谷歌有像

这样的字符串
"https://maps.googleapis.com/maps/api/place/search/xml?location=52.577798767,-2.124885567&radius=500&types=bank&sensor=false&key=myobfscuredgooglekey"

现在我怎么能传递动态坐标(如果我改变我的位置,我的坐标会是新的)而不是固定坐标?

我想在

中使用此字符串
NSURL *googlePlacesURL = [NSURL URLWithString:googleUrl];

NSData *xmlData = [NSData dataWithContentsOfURL:googlePlacesURL];

googleUrl 我试过这样的网址

 NSString *googleUrl=[[NSString alloc]initWithFormat:@"https://maps.googleapis.com/maps/api/place/search/xml?location=%f, %f &radius=500&name=man&sensor=false&key=myobscuredgooglekey",a,b];

a n b

//a = [NSString stringWithFormat:@"LATITUDE: %f", location.coordinate.latitude];
//b = [NSString stringWithFormat:@"LONGITUDE: %f", location.coordinate.longitude];

2 个答案:

答案 0 :(得分:3)

NSString *googleUrl = [NSString stringWithFormat:@"/xml?location=%f,%f", location.coordinate.latitude, location.coordinate.longitude];

使用从CLLocation检索到的CLLocationManager格式化字符串。 (我省略了网址中的一些文字以缩短它。)

答案 1 :(得分:0)

Evan有正确的答案,但为了简洁起见,他遗漏了你网址的左侧,或者因为你真的不需要每次格式化整个字符串。

NSString *googleUrl = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/xml?location=%f,%f", location.coordinate.latitude, location.coordinate.longitude];

您还需要了解并非所有坐标系都使用相同的语言。获取您从location.coordinate.latitute和longituge获得的确切值,并手动构建正确的URL并查看它是否有效。如果Evan的代码不是逐字的,那就是协调翻译问题。基于URL中的数字,我猜它是在Radians中,但它可以是十进制度,这是iPhone返回的。