【问题标题】:Get the longitude and latitude on a Windows PC在 Windows PC 上获取经度和纬度
【发布时间】:2013-07-09 13:00:40
【问题描述】:

如何在 Windows PC 上获取经度和纬度?

我正在编写一个 libgdx 游戏,我想根据位置进行多人匹配。我已经在 android 上获得了位置,但我需要在桌面版本上获得它。我很难找到答案,因为大多数答案都是为 android 编写的。

我不需要精确的准确性,但是,如果它可以准确地确定市/县,那就太好了。

Google maps API 是我见过的东西,听起来它比我需要的要多,而且它似乎没有 java 版本(不适用于 android..)

编辑: 我真的只是在为 java 寻找可靠的 IP > 位置服务。 (我想要大约 50-200 英里的准确度)。尽可能免费。

【问题讨论】:

  • 我不认为可以这样做,除了 IP 地址只能按国家/地区分类。
  • 与手机相反(可以使用手机 ID、gps 位置),台式机不知道它们的位置。有几个 IP 到定位服务(查看一些here),但它们的精度在英里到 10 英里/100 英里范围内......
  • @fvu 这不完全正确;如果您使用 HTML5 地理定位,用户可以选择让运行脚本访问更精确的位置。当然,我不确定您将如何通过 Java 脚本访问它。
  • @mc10 afaik 用于桌面的所有地理定位内容,无论是 html5 还是基于 Windows 的,都需要一些帮助来记住您的位置(ff 插件、默认值等)。因此,更明智的做法可能是只询问用户他们的位置并将其保存为应用程序设置的一部分,绕过任何外部服务。
  • @fvu 我不介意不准确,我希望准确度达到 100-200 英里。

标签: java gps


【解决方案1】:

我想根据位置进行多人匹配..

由于玩家有提供这些信息的动机,一个好的方法是询问他们。

【讨论】:

  • 那不是很专业。我知道这是可能的,并且在大多数情况下使用 IP 来确定桌面上的位置
  • 如果你这样做,玩家可能会撒谎并且更容易欺骗任何位置。
  • @RyanAmos 这样做有什么意义?这只是意味着你最终会与中国人或其他什么人结对......
  • 不确定,这真的取决于您的应用程序。如果您以不同的方式对待不同地区的玩家或给予任何基于地区的奖励,则存在被滥用的风险。
【解决方案2】:

对于 Windows 7 及更高版本,您可以使用Windows Location API。它没有在 Java 中公开,但是用可以与之对话的语言(例如 C#)编写程序然后调用该程序以获取数据应该相当简单。然而,PC 很可能不会真正知道它在哪里,因为大多数(至少目前)没有内置 GPS 硬件。

【讨论】:

    【解决方案3】:

    http://www.geoplugin.com/ 服务发出http 请求,是免费的,但不是100% 准确的位置。

    它将通过 ip 为您提供位置。

    P.D.:在您的情况下,您应该通过 java 使用 jsonRequest 到 http://www.geoplugin.net/json.gp?ip=xx.xx.xx.xx 文档:http://www.geoplugin.com/webservices/json

    (HTTP Json requests in Java?)

    ================================================ ====

    您还有其他选择,例如(有时更准确): - http://www.iplocation.net/(必须解析 html 以获得结果) - http://whatismyipaddress.com/ip/xxx.xxx.xxx.xxx(必须解析 html 以获得结果) - http://www.ip2location.com/(非免费?)

    【讨论】:

    • 我输入了我的 IP 地址,而且距离很远,而且整个州都关闭了,我想获得城市类型的准确性。
    • 到目前为止,您的似乎是最好的免费选择,尽管它不像我想要的那么准确。(我本来希望 50-200 英里,但对我来说是 500 英里。 .)
    【解决方案4】:

    您只能通过使用 IP 地址获得大概的位置,可能只有国家。检查Google Maps API v3 - IP-based Geolocation 了解您可以使用 google maps api 做什么。顺便说一句,那里有很多 API 和服务。

    【讨论】:

    • 是的,我很确定我会是近似值,但这对于桌面版本来说已经足够了
    • 请注意,如果您使用免费服务,您每天可以(和总体)进行的查找次数将受到限制。
    猜你喜欢
    • 1970-01-01
    • 2019-03-25
    • 2016-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多