【问题标题】:Open the iPhone map application via link to Google maps with KML as query通过以 KML 作为查询的 Google 地图链接打开 iPhone 地图应用程序
【发布时间】:2010-12-18 10:09:18
【问题描述】:

当网页上的链接转到 maps.google.com/?q=http://example.com/mapdata.kml 时,如何强制 iPhone 地图应用程序打开?

如果我打开地图应用程序并专门在查询框中输入http://example.com/mapdata.kml,则所有数据都已正确加载。但是如果我使用http://maps.google.com/?q=http://example.com/mapdata.kml,地图应用程序会加载,但不会加载任何数据,查询框中也没有任何内容。

典型的查询有效,例如 q=cupertino 或 q=[latitude,longitude]。好像是 kml 链接坏了。

有人让这个工作吗?这支持吗?是否必须对查询进行 URI 编码?

【问题讨论】:

标签: iphone google-maps maps


【解决方案1】:

你的问题让我很感兴趣,所以我看了看Apple URL Scheme Reference。上面写着:

虽然地图应用程序支持 许多谷歌地图参数和 查询,它并不支持全部。 创建有效地图的规则 链接如下:

域必须是 google.com 并且 子域必须是地图或地图。

路径必须是 /、/maps、/local 或 /m 如果查询包含站点作为键 并将本地作为值。

路径 不能是 /maps/*。

所有参数必须 得到支持。列表见表 1 支持的参数。

一个参数 如果值为 URL,则不能为 q=* (因此不会提取 KML)。

参数不能包含 view=text 或 dirflg=r.

如果我没看错,它看起来并不支持您想要的东西,但是,有趣的是,您可以直接在地图应用程序中输入完整的 kml URL 并让它工作。这似乎是苹果的一个错误。我会开始向它抛出参数,看看会发生什么。这总是很有趣。 ;-)

最好的问候,

附言一个不错的贴纸。我更喜欢赏金,但看起来你还没有获得足够的 SO 积分来提供它。 ;-)

【讨论】:

  • 啊!我以前很怕那个。我之前读过参考资料以寻找答案,但不知何故瞥了一眼。我将不得不寻找另一种方法。但是你回答了这个问题,所以如果你想要的话,贴纸就是你的了。在 harry at-at-harrylove.org 给我发电子邮件。干杯!
  • 我可以使用“日语”文本“マクドナルド”作为查询字符串吗?它不工作。如何解决这个问题?
【解决方案2】:

这个链接会做你想做的事

<a href="maps:q=http://example.com/mapdata.kml">

但它仅适用于 iOS,因此请确保检查用户代理等并在非 iOS 上使用法线贴图 url

<a href="http://maps.google.com?q=http://example.com/mapdata.kml">

【讨论】:

  • 见上文:“如果值为 URL,则参数不能为 q=*(因此不会提取 KML)。”
  • maps:q=myquery 有效,但是您能指出我在文档中的哪个位置说我们可以使用maps:... 而不是http://... 吗?
【解决方案3】:

最简单形式的地图网址

maps:q=GivenTitle@latitude,longtitude

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-10
    • 2017-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-08
    相关资源
    最近更新 更多