【问题标题】:Importing a KML file to Google Maps with api call/request使用 api 调用/请求将 KML 文件导入 Google 地图
【发布时间】:2013-02-22 15:54:36
【问题描述】:

我有由一组点(形成线的纬度和经度)表示的地理数据,数据以 json 格式。我想用这些数据在我的网站上创建一个谷歌地图,但用户也应该可以编辑地图,这样他就可以移动线条、添加标记等。

  1. 我可以使用 Google Maps API 创建它 - 使用它我可以绘制折线、添加标记,但一切都必须由我的 javascript 完成,这增加了很多工作。

  2. Google Maps 为普通用户提供了一个非常好的地图编辑器。要使用它创建地图,用户必须单击界面或导入 KML 文件。

我在想的是混合方法 1. 和 2. 像这样:
a) 将我的数据导出到 KML 文件
b) 将 KML 文件导入用户 Google 地图帐户
c) 用户可以使用出色的 Google 地图编辑器编辑地图
d) 使用嵌入代码将地图嵌入我的网站

问题在于 b) 点 - 是否可以使用一些请求/api 调用将 KML 文件导入 Google 地图?

【问题讨论】:

    标签: google-maps google-maps-api-3


    【解决方案1】:

    如果您的意思是在 android 上,是的,您可以从您的应用中调用 googlemaps 应用作为意图,并提供一个 kml 文件供其显示。

    String kmlWebAddress = "http://www.afischer-online.de/sos/AFTrack/tracks/e1/01.24.Soltau2Wietzendorf.kml";
    String uri = String.format(Locale.ENGLISH, "geo:0,0?q=%s",kmlWebAddress);
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
    startActivity(intent);
    

    如果您的意思是在线,则可以通过调用 googlemaps 并附加 "?q=http://www.yourdomain.com/yourfile.kml" 来实现。

    像这样:

    www.googlemaps.com?q=http://www.afischer-online.de/sos/AFTrack/tracks/e1/01.24.Soltau2Wietzendorf.kml

    【讨论】:

    • 显示效果很好,但我想将地图导入用户的谷歌地图个人资料,这样他就可以自己修改地图。
    • 我不会浪费任何时间编写代码直接与 google 帐户交互,除非我可以保证我会有可用的维护工时。 google 倾向于在不事先通知的情况下更改其协议、程序和商业政策(当您使用 google api 时,它在细则中)。此外,IMO 通常让用户自己决定将哪些内容导入或不导入他们的 Google 帐户会更安全。
    猜你喜欢
    • 2012-07-11
    • 2012-05-30
    • 2012-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多