关于 App 的 Gecoding (经度纬度和地址转换)的实现

2010-08-08 18:10:44 +08:00
 Kenyth
有人知道常见的 iPhone App 中问你要位置然后可以直接显示地址给你看是怎么实现的吗?例如各种twitter客户端,4sq,国内的大众点评和丁丁地图的iPhone App等等。

也就是把地址(例如街道、路名等)转为经度纬度的过程,或者反向的过程。

我现在知道的有 Google Maps 的 Geocoding API 可以办到,但是和 Terms of Service 好像有冲突:
“You may use the HTTP geocoder to geocode addresses outside of your Google Maps API application so that they may be cached and later displayed using one of the Google Maps APIs, but locations obtained using the Geocoding Web Service may not be used by any other application, distributed by other means, or resold. ”
http://code.google.com/intl/en/apis/maps/faq.html#geocoder_exists

谁知道还有没有其他的办法可以做这件事情的,特别是中文地址的支持。

另外,如果我要在自己的服务器端实现这个 (Google API 有 25000的限制),有什么方案么有?
12866 次点击
所在节点    iPhone
14 条回复
kailuo
2010-08-08 18:36:47 +08:00
Kenyth
2010-08-08 18:43:25 +08:00
@kailuo 那是获得的经纬度,不是可读的地址名称,例如北京 海淀区 学院路 xx号。
Livid
2010-08-08 18:49:52 +08:00
在你的电脑上装上 Charles,然后设置 iPhone 的 HTTP Proxy 到你的电脑,然后运行你好奇的那个程序,它发出的所有网络请求就被捕获下来。
kailuo
2010-08-08 18:52:54 +08:00
好像 Core Location 是获取用户位置的⋯⋯

以前也考虑过这个问题,刚才顺便查了一下,的确需要 API 支持 :( 不过好消息是似乎 MicroSoft 以及 Yahoo! 也都有类似服务。

可以参考下这个:
http://blog.sallarp.com/ipad-iphone-forward-geocoding-api-google/
kailuo
2010-08-08 18:54:05 +08:00
@Kenyth 嗯,还没有具体用过。现在正好提前看看先 :)
Kenyth
2010-08-08 18:59:55 +08:00
@Livid 这是我最希望看到的答案:-),以前看过这东西一时没想起来,正在尝试。
Kenyth
2010-08-08 19:30:31 +08:00
那个工具太棒了,可是免费试用只有1个月。。。

刚测试了国内的两个(包括号称做地图的丁丁地图)全部是用的 Google 的 API ,还不是 .cn 的,全不是 .com 的,看来我都高估了别人的实力:-)

大众点评的 app 用的是 http://maps.google.com/maps/geo

丁丁地图用的是 http://maps.google.com/maps/api/gecode 参数里面连 API key 都没有带 (我也搞不清这个 key 什么时候是起作用的)
Livid
2010-08-08 19:37:26 +08:00
v3 版的 API 推出后不强制要求 API KEY。
Kenyth
2010-08-08 19:42:57 +08:00
@Livid 这样的话 Google 宣称的 terms of service 就不能从技术层面限制了,应该是商业层面的。依据我的理解,他们这种使用可能全部违反了 ToS 。
Livid
2010-08-08 19:45:49 +08:00
@Kenyth 对于一个每天几十亿次请求的 API 来说,他们可能还真的不会太在乎一些细小的 violation。先用最简单的办法把自己想要的功能做出来吧。
Kenyth
2010-08-08 19:50:21 +08:00
@Livid 正解! 谢了:-)
doskoi
2010-08-08 21:19:07 +08:00
CoreLocation 获得的经纬度 SDK还提供Reverse Geocoding
就能获得可读的地址了...查文档吧~
doskoi
2010-08-08 21:20:16 +08:00
MKReverseGeocoder & MKReverseGeocoderDelegate
easy for use
jorakura
2010-08-13 15:35:55 +08:00
收藏一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1487

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX