这似乎有很多,但似乎每个人都想要街道级别的数据。
我正在编写一个 iOS 应用程序,该应用程序需要获取您所在国家/地区的国际拨号代码(传出)-所以我只需要该国家/地区。由于这主要用于国外,因此在线解决方案实际上行不通!
Whist 搜索我发现了很棒的 openstreetmap.org,但他们的导出功能似乎只提供街道级别 - 并且不会一次性完成整个世界!
一旦我有了数据,我可能还需要算法方面的帮助......但那是以后的事了!!:-)
谢谢
本。
这似乎有很多,但似乎每个人都想要街道级别的数据。
我正在编写一个 iOS 应用程序,该应用程序需要获取您所在国家/地区的国际拨号代码(传出)-所以我只需要该国家/地区。由于这主要用于国外,因此在线解决方案实际上行不通!
Whist 搜索我发现了很棒的 openstreetmap.org,但他们的导出功能似乎只提供街道级别 - 并且不会一次性完成整个世界!
一旦我有了数据,我可能还需要算法方面的帮助......但那是以后的事了!!:-)
谢谢
本。
您是否尝试过使用http://www.geonames.org/?您可以下载数据库并离线使用。
Yggdrasil https://github.com/leonardvandriel/Yggdrasil从坐标到国家代码进行反向地理编码。包括一个 .ygg 文件,可将精度降至约 10 公里。
ruby 要点中的粗略(40 公里精度)变化在这里:https ://gist.github.com/leonardvandriel/4579113
MapKit MKReverseGeocoder 类返回具有以下属性的 MKPlaceMark 对象:
addressDictionary
thoroughfare
subThoroughfare
locality
subLocality
administrativeArea
subAdministrativeArea
postalCode
country
countryCode
你应该能够从中得到你需要的东西。您需要制作自己的国家代码列表以及相关的拨号代码。
这就是它在 CLGeocoder 类参考中所说的。
基于 iOS 的设备必须能够访问网络,以便地理编码器对象返回详细的地标信息。虽然,地理编码器在本地存储了足够的信息来报告许多位置的本地化国家名称和 ISO 国家代码。如果特定位置的国家信息不可用,地理编码器可能仍会向您的完成块报告错误。
我也只需要国家/地区位置,但我不知道“许多位置”是什么意思。它似乎在挪威奥斯陆不起作用。