3

我正在构建一个 iOS 应用程序,它的一个功能实现了反向地理编码,以从地图上的用户手势点击获取街道地址。

使用 CLGeocoder 的反向地理编码功能运行应用程序时,我只能获取城市和国家/地区的详细信息。在某些情况下,在主要道路上,我能够获得主要道路名称。

我认为这个限制来自 Google Maps api。

但是当我测试这个例子时,(http://gmaps-samples.googlecode.com/svn/trunk/geocoder/reverse.html)我能够获得更准确和详细的信息,例如街道号码和名称以及邮政编码.

这是 CLGeocoder 的限制吗?如果是这样,我如何在我的应用程序上实现 Google Maps api?

4

2 回答 2

0

据我了解,CLGeocoder 在过去一年左右没有使用 Google 获取数据;当它使用谷歌时,每天的用户数量受到很大限制。

您可能还想在 iOS6 模拟器中尝试相同的 CLGeocoder 调用,以查看是否获得更多数据。

您可以直接从您的应用程序使用 Google API 调用,但请仔细阅读 TOS 以了解有关用户的限制。

于 2012-09-05T16:01:33.653 回答
0

好吧,看起来是的,Apple 的CLGeocoder正向地理编码(地址-> 坐标)并不像 Google Maps Geocoding API 那样准确,尤其是在美国以外的地区。使用尽可能完整地填写所有字段的地址字典比简单的地址字符串要好得多,但它仍然远远不够好。谷歌(通常)会在街道编号的 5-10m 范围内为您提供坐标,如果幸运的话,Apple 会在正确街道的某处为您提供坐标。

找到 Apple Developer Technical Note TN2289,其中详细说明了CLGeocoder.

进一步 iOS6 将停止支持使用谷歌地图

于 2012-09-05T16:05:18.907 回答