在 iPhone 上使用地理编码检查地址的有效性

Posted

技术标签:

【中文标题】在 iPhone 上使用地理编码检查地址的有效性【英文标题】:Check validity of address with Geocoding on iPhone 【发布时间】:2011-07-28 18:39:18 【问题描述】:

我有一个应用程序会提示用户输入地址。有没有办法使用 Google 的 Maps 或 Places API 来检查地址是否为有效地址?任何帮助,将不胜感激。我知道这是一个模糊的问题,但我不确定如何以其他方式提出。

【问题讨论】:

【参考方案1】:
NSString *urlString = [NSString stringWithFormat:@"http://maps.google.com/maps/geo?q=%@&output=csv", 
                       [addressField.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; // addressField is where you enter your address.
NSString *locationString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString] encoding:NSUTF8StringEncoding error:nil];
NSArray *listItems = [locationString componentsSeparatedByString:@","];

if([listItems count] >= 4 && [[listItems objectAtIndex:0] isEqualToString:@"200"]) 
    latitude = [[listItems objectAtIndex:2] doubleValue];
    longitude = [[listItems objectAtIndex:3] doubleValue];

如果地址存在,您将获得经纬度坐标。希望这会有所帮助。

【讨论】:

【参考方案2】:

消除 95% 垃圾邮件配置文件的快速方法是让我的公司拥有一个包含我们州名和邮政编码的板载列表。如果邮政编码和州不匹配,我们会要求用户再次检查。

根本不是万无一失,但如果垃圾邮件发送者是问题,这可能会有所帮助。

【讨论】:

如果不是所有用户都在美国,就像世界上大多数人的情况一样 Matti,邮政编码在美国以外的地方都有,欧盟大部分地区都有邮政编码,还有中国、日本和俄罗斯。但如前所述,该解决方案并不完美,但可能是一个介绍性步骤,以消除最糟糕的条目:)

以上是关于在 iPhone 上使用地理编码检查地址的有效性的主要内容,如果未能解决你的问题,请参考以下文章

如何在旅行期间使用 iPhone 有效地跟踪我的地理位置

使用 iPhone 的纬度和经度进行反向地理编码

在 iPhone 上进行反向地理编码 - 获取准确的街道号码

在 iphone dev 的反向地理编码器中获取奇怪的输出

在 iPhone 中,我如何知道在使用正向地理编码时我的所有地图注释何时加载?

iPhone 3.0 MapKit - 同一位置的多个注释