好的,这就是我想要实现的,我需要你的想法:
- 按名称/地址/等输入地理位置(例如
London, Oxford Street 20
) - 获取点的经度/纬度
我的问题:
- 你会怎么做呢?
- 使用Google Maps API(这是我首先想到的)是我唯一的解决方案吗?
如果所使用的服务可以自由集成到商业应用程序中会更好 - 所以欢迎任何想法...... :-)
好的,这就是我想要实现的,我需要你的想法:
London, Oxford Street 20
)我的问题:
如果所使用的服务可以自由集成到商业应用程序中会更好 - 所以欢迎任何想法...... :-)
您要做的基本上是地理编码。谷歌、必应和雅虎(以及更多)等主要地图提供商都提供某种形式的地理编码 API 供您使用。查看以下快速链接:
编辑:(刚刚看到objective-c标签)
请注意,这些是非本地解决方案。但是,提供的 API 通常是基于 REST 的(输出为 xml/json),您应该不难使用这些服务从应用程序中获取您想要的地理编码纬度。
为此有一个内置的 API。
对于 iOS 5 和更新版本,您可以使用CLGeocoder,对于旧版本,您需要使用一些外部库。
打电话
- (void)geocodeAddressString:(NSString *)addressString completionHandler:(CLGeocodeCompletionHandler)completionHandler
您想要获取位置的位置。它异步运行,completionHandler
您将获得一个包含所有可能的地址的地标数组,其中第一个是最准确的。正如苹果所说:
对于大多数地理编码请求,此数组应仅包含一个条目。但是,在指定地址无法解析到单个位置的情况下,前向地理编码请求可能会返回多个地标对象。
题外话:
只有我一个人首先想到的Oxford
是“他对这个奇怪的十六进制值是什么意思?”