如何在iOS中的Google Map SDK中添加搜索功能?
我是iOS开发的新手,也是Google map SDK的新手。我想通过Google map的URL模式在我的应用程序中添加搜索功能。如果可能的话,请为我提供解决方案,或者提供相关资源。 谢谢。您需要使用,因为只有谷歌地图iOS SDK本身无法做到这一点 地理编码是转换地址的过程(如“1600”) 圆形剧场公园道,加利福尼亚州山景城“)转换为地理坐标 (如纬度37.423021和经度-122.083739),您可以使用 放置标记或定位地图 用户可以输入任何类型的地址,地理编码API将返回特定的坐标,以便您可以在地图上显示它 您需要:如何在iOS中的Google Map SDK中添加搜索功能?,ios,objective-c,google-maps,google-search-api,Ios,Objective C,Google Maps,Google Search Api,我是iOS开发的新手,也是Google map SDK的新手。我想通过Google map的URL模式在我的应用程序中添加搜索功能。如果可能的话,请为我提供解决方案,或者提供相关资源。 谢谢。您需要使用,因为只有谷歌地图iOS SDK本身无法做到这一点 地理编码是转换地址的过程(如“1600”) 圆形剧场公园道,加利福尼亚州山景城“)转换为地理坐标 (如纬度37.423021和经度-122.083739),您可以使用 放置标记或定位地图 用户可以输入任何类型的地址,地理编码API将返回特定的坐标
Google Maps SDK for iOS与其他答案一样,您需要使用 基本上,您需要向api发送请求,并从返回的JSON对象解析所需的信息(也可以使用XML) 非常从api接收json响应的基本示例:
- (void)sendGeoCodingRequest:(NSString *)parameters {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSString *query = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=%@" YOUR_KEY];
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[[NSURL alloc] initWithString:[query stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
NSError *error;
NSURLResponse *response;
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
if (httpResponse.statusCode != 200 || error || ![data length]) {
NSLog(@"Error fetching auto complete results: %@", error);
} else {
// parse the json and do something with the result
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
}
});
}
只需按照谷歌地理编码API的说明进行操作,希望代码片段能加快速度。什么样的搜索?输入是什么,输出是什么?@nburk和谷歌地图一样,比如
城市名
,国家名
,州名
,街道名
,我想把它们显示在我的GMSMapView中。我回答了你的问题了吗?还有什么不清楚的吗?:)否则,请勾选绿色复选标记,将问题标记为已解决(请:)?你还需要帮助吗(但您有任何资源,请给我。请查看谷歌工程师提供的本教程,它很棒@Ramesh,这有帮助吗?当我使用Api密钥时,错误是此IP、站点或移动应用程序无权使用此Api密钥。
好的,这是一个新问题:)您能否将此问题标记为已解决,并针对此问题发布一个新问题(请:)