我有一个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开发人员)?