【问题标题】:I want to use Google Map API for my Desktop application我想为我的桌面应用程序使用 Google Map API
【发布时间】:2011-02-21 11:25:15
【问题描述】:

我想为我的桌面应用程序使用谷歌地图 API。该应用程序将完全连接到互联网。

当我搜索有关此实现的一些研究笔记时。我找到了一个具有配置的理想站点,但是它有一些要下载的 java 文件,但是当我尝试该站点时,它没有加载。这是swinglabs.org

http://today.java.net/pub/a/today/2007/10/30/building-maps-into-swing-app-with-jxmapviewer.html

对我的桌面应用程序执行此 api 实现的任何其他选项?还有一件事。我尝试下载google api。即使它要求一个网址。我们必须提供一个网址,然后我们才能获得下载它的密钥。并且 api 应该在那个特定的 url 中运行。否则,它不起作用。这在桌面应用程序中的显示方式

欢迎任何想法。

【问题讨论】:

    标签: java google-maps


    【解决方案1】:

    目前,将 JXMapViewer 与 google 地图一起使用是非法的,原因是该组件需要直接访问 Google 的图块服务器。根据 Google 的 ToC:

    我可以访问地图和卫星吗 直接图片?

    您可能无法访问 地图或卫星图像通过 谷歌地图以外的任何机制 APIs(比如创建自己的 映射 API 或使用批量磁贴 下载脚本)。你的应用程序 访问瓷砖将被阻止,如果 它在 Google 之外访问它们 地图 API。见第 5.3 节 Google 使用条款了解更多详情。

    更多信息可以在here找到。您应该可以从here 下载软件包。他们移动了域,许多网站仍然指向旧域,因此无处可去。

    目前,您可以通过显示来自OpenStreetMap 的地图来使用 JXMapViewer。

    但是,您可以在应用程序上显示静态地图。您基本上构建了一个 URL。这个tutorial 应该让您了解如何构建一个能够请求静态地图的 URL。然后,您使用 HTTP Get 请求来获取图像。

    最后但同样重要的是,Google 正计划允许直接访问其磁贴服务器,但这可能需要一段时间。

    【讨论】:

    • 感谢您的回复。但我的应用程序是桌面应用程序。所以我确实需要下载google api。但他们要求提供一个 URL 来获取密钥。我确实需要获取密钥才能下载和使用它。请问有没有其他方法。有没有其他教程可以教如何使用桌面应用程序设置 google map api
    • 您需要一个密钥才能访问谷歌地图。我发布了一个教程链接,该教程向您展示了如何构建 URL 以从谷歌地图获取地图。只要您的应用程序可以免费下载,您就可以从 Google 获取静态地图以显示在您的桌面应用程序上。
    • GMap.Net 允许但不合法。
    • @Dasiths:请删除上面的评论。
    • 那我换个说法吧。它通过“抓取”来允许它,这违反了他们的 API 条款(但他们又没有使用 API,所以他们没有绑定到 TOS)。它的合法性可以这样说是完全合法的。当然是它自己的项目,因为它没有将任何来源链接到谷歌地图。它只是提供工具。
    【解决方案2】:

    您可以在桌面应用程序中使用谷歌地图。

    为此,您需要在应用程序中嵌入浏览器,然后打开呈现地图的 html/javascript 文件。

    不同的语言和 api 提供了嵌入浏览器的方法。例如 wxwidgets/c++ 有一个名为 WebView 的小部件,它允许在 linux 上嵌入 webkit,在 windows 上嵌入 trident。类似的 mfc/c# 也允许相同。因此,请查看如何将浏览器嵌入到您的应用程序中。

    该 api 还应提供一种在嵌入式浏览器中执行 javascript 代码的方法。然后,您可以根据需要通过应用程序的代码修改谷歌地图。

    【讨论】:

      【解决方案3】:

      我有一个调用类似 API 的桌面应用程序。它们要求 API 调用来自一个特定的域(和 URL)。所以,我让桌面应用程序联系我自己的网络服务器,它调用第三方 API 并返回结果。

      【讨论】:

      • 如果它需要一个 URL,它怎么会是一个桌面应用程序。所以它不是桌面应用程序。我的问题是针对桌面应用程序
      • @Nubkadiya,你知道你可以让你的桌面应用程序联系你自己的网络服务器,然后调用 API 吗?
      • 但是您不再在桌面应用程序中显示地图。通过使用 HTML 模板和 javascript,您甚至不需要 Web 服务器就可以做到这一点。您只需填充 HTML 模板并在 Web 浏览器中打开它。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-17
      • 1970-01-01
      • 2019-11-26
      相关资源
      最近更新 更多