iOS6 反向地理编码

3

我有一个iPhone应用程序(使用XCode 4.4.1构建,目标操作系统为IOS 5.1),它使用CLGeocoder进行反向地理编码。

在我的应用程序中,我按以下方式确定标题(用于地图上的注释):

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

当运行在IOS5.x设备上时,结果正如预期的那样,位置信息从左到右逐渐增加(即郊区、城市、国家)。
如果我在IOS6设备上完全运行相同的应用程序,则placemark.subLocality和placemark.locality的值会颠倒,导致(城市,郊区,国家)。
我怀疑这是从Google地图切换到Apple地图的结果。 我不愿意根据IOS版本有条件地编写代码,因为我认为IOS6下的行为是不正确的,如果是这样的话,将来会被更正。
是否有人遇到了这个问题,如果有的话,对于处理它的最佳方法有什么建议,或者我是否遗漏了什么(我是一名相对较新的IOS开发人员)?
1个回答

0

iOS 6.0中的反向GEO响应中,子地区和地区被交换了(Sublocality and locality are swapped),但只有某些位置。旧金山似乎没问题,但悉尼(以及其他澳大利亚城市)返回的值顺序错误。


谢谢。这几乎证实了这是一个IOS6的bug。在标记为已回答之前,我会再等几天,但似乎很不可能是我做错了什么。 - Andrew Rutherford
@AndrewRutherford 没问题 :) 看起来这个 bug 还在。希望苹果能尽快修复它。 - RedBlueThing

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接