2012-09-27 71 views
3

我有一个使用CLGeocoder执行反向地理编码的iPhone应用程序(使用XCode 4.4.1和OS 5.1的OS目标构建)。IOS6反向地理编码

在我的应用我确定的标题(用于在地图上的注释),如下所示:

CLPlacemark *placemark = ...;  
    NSString* title = [NSString stringWithFormat:@"%@, %@, %@", placemark.subLocality, placemark.locality, placemark.country] 
    ... 

当IOS5.x装置如预期与位置信息从在尺度增加的结果上运行从左到右(即郊区,城市,国家)。

如果我的iOS6的设备上运行完全相同的应用程序,为placemark.subLocality和placemark.locality值反转导致(市,郊区,乡村)。

我怀疑这是从Google地图切换到Apple地图的结果。我不愿意根据IOS版本对此进行有条件的编码,因为我怀疑IOS6下的行为是不正确的,如果是这样的话,将来会得到纠正。

有没有人遇到过这个问题,如果有的话最好的方法来处理它或我缺少的东西(我是一个相对较新的IOS开发人员)?

回答

0

Sublocality and locality are swapped在iOS 6.0的反向GEO响应中,但仅适用于某些位置。旧金山似乎很好,但悉尼(和其他澳大利亚城市)以错误的顺序返回价值。

+0

谢谢你。这一切,但确认它是一个IOS6错误。我将暂停几天,然后再回答这个问题,但这似乎不太可能是我做错了事情。 –

+0

@AndrewRutherford没问题:)好像bug仍然存在。希望苹果将尽快修复它。 – RedBlueThing