代码之家  ›  专栏  ›  技术社区  ›  Igor Zevaka

谷歌地理定位API库

  •  6
  • Igor Zevaka  · 技术社区  · 15 年前

    有没有图书馆可以用谷歌服务给你大概的位置( https://www.google.com/loc/json )?

    google gears支持它,如本文所述 http://code.google.com/p/gears/wiki/GeolocationAPI Web服务请求/响应模式上也有很好的doco。

    火狐和iPhone Safari也使用该服务,它们有自己的实现。我想在我自己的C语言应用程序中使用这个服务,所以我想要一个我可以使用的库(C/C/+/C/A)。目前,我的同事实现它的唯一方法是使用Gears插件进行IE,并在我们的WPF应用程序中托管嵌入式IE窗口。这有点繁琐,而且难以再分配。

    有什么想法吗?

    编辑 这是上一页的评论:

    评论:steveblock@google.com,2008年12月2日

    谢谢你的评论。一些回答…

    有关API使用的许多问题的答案,请参阅以下地理位置的API文档: http://code.google.com/apis/gears/api_geolocation.html . 这个wiki页面旨在记录那些开发工具的正在进行的工作,而不是作为API的最终文档。

    关于JSON协议,我已经更新了这个文档,以反映Gears中的当前行为。请注意,该协议的正式文档将很快添加到地理位置API文档中。

    Gears服务条款禁止直接使用Google定位服务器( http://www.google.com/loc/json )通过HTTP请求。只能通过地理位置API访问此服务。

    这有点糟糕。那么,火狐是如何通过HTTP请求直接使用该服务的呢?

    2 回复  |  直到 13 年前
        1
  •  3
  •   Noah    15 年前

    请看一下索尼PlaceEngine,它会根据它可以访问的WiFi信号为您提供位置。缺点是用户必须安装PE客户机。另一方面,它可以被网站和/或本地应用程序访问。有一个在线服务器数据库,您可以查询详细信息,还有一个本地数据库选项,您可以在没有Internet的情况下查询位置估计。它被用于一系列导航软件,包括作为索尼NAV-U设备中GPS的备份。此外,您还可以自己更新PlaceEngine数据(即添加新的访问点)。

    选项2是苹果的核心定位——目前使用的是一种叫做Skyhook的服务。如果你愿意的话,我相信你可以在非苹果平台上使用Skyhook。

    谷歌的Latitude服务不知何故使用了Gears,而且必须使用WiFi,因为它太精确了,无法仅基于IP地址。他们可能在后端使用PlaceEngine或Skyhook数据库…

        2
  •  0
  •   Andrew    15 年前