CLGeocodeCompletionHandler只有一个地标条目

时间:2012-12-05 09:29:16

标签: iphone objective-c geocoding clgeocoder

的文档
- (void)geocodeAddressString:(NSString *)addressString completionHandler:(CLGeocodeCompletionHandler)completionHandler;

文件明确指出:

  

在前向地理编码请求的情况下,多个地标对象   如果提供的信息产生多种可能,则可以返回   位置。

声明它返回一个地标数组。然而,即使我搜索我确定知道的物品有多个条目(好莱坞,华盛顿,丹麦,主要街道等),我总是只有一个条目。

有些人只是耸耸肩说使用谷歌API,但我担心请求限制。

是否有一些设置或黑客来解决这个问题,或者CLGeocoder是否已被破坏?

2 个答案:

答案 0 :(得分:2)

我肯定会建议使用Google地理编码API - 它非常优越。我还争辩说,您不应该担心Google地理编码API请求的使用限制。

如果您正在开发移动应用程序,我建议实施客户端地理编码 - 即每个设备直接查询Google API。正如Google's own documentation

中直接陈述的那样
  

地理编码限制是指每个用户会话,您的应用程序不会随着用户群的增长而达到全局限制。

geocoding strategies docsgeocoding docs中的详细信息。

答案 1 :(得分:0)

MKLocalSearch是这里的答案:

<footer>
    <img src="Images/ricepaper.png" alt="">
    <dl>
        <dt>
            <a id="Contact&nbsp;Us" style="color: #14ab3f"><b>Contact Us</b></a>
            <br>
            <br>
            <dd><b>City Manager</b>
            <dd><b>P.O. Box #####</b>
            <dd><b>City</b>
            <dd><b>### ###</b>
            </dd>
    </dl>
</footer>

这将返回附近的景点,不仅是景点,等等。 我能想到的唯一缺点是,您必须在初始化程序中提供MKCoordinateRegion和跨度的当前位置。