2009-11-19 62 views
6

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

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

典型的查询工作,如q = cupertino或q = [纬度,经度]。这似乎是破碎的kml链接。

有没有人得到这个工作?这是否支持?你是否必须对查询进行URI编码?

+0

相关:http://stackoverflow.com/qu estions/2963132/how-to-email-cllocationcoordinate2d-as-a-link – cregox 2011-02-02 22:25:11

回答

7

你的问题让我感兴趣,所以我在Apple URL Scheme Reference上做了一些小小的观察。它说以下内容:

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

域名必须是google.com和 子域必须是地图或底涂。

的 路径必须为/,/地图/本地或/ M 如果查询包含网站的关键 和地方的价值。

路径 不能是/ maps/*。

所有参数必须支持 。请参阅表1以获取支持的参数列表 。

如果该值为URL (因此KML未被拾取),则参数 不能为q = *。

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

如果我读取正确的,它看起来并不像你想支持什么,但是,有趣的是,你可以直接键入完整的KML URL到地图应用,它的工作。这似乎是苹果方面的一个错误。我只是开始抛出参数,看看会发生什么。这总是很有趣。 ;-)

最好的问候,

p.s.那一个不错的贴纸。我更喜欢赏金,但看起来你还没有足够的SO点提供。;-)

+0

唉!我以前很怕那个。我已经阅读过参考文献寻找答案,但不知怎的瞥了一眼。我将不得不寻找另一种方法。但是你回答了这个问题,所以贴纸是你的,如果你想要的话。在harry at-at harrylove.org给我发电子邮件。干杯! – 2009-12-01 04:44:36

+0

作为查询字符串可以使用“日语”文本“マクドナルド”吗?它不工作。如何解决这个问题? – Satyam 2010-04-28 10:37:24

2

此链接会做你想要

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

什么,但它只能在iOS工作,所以一定要检查用户代理等,并在非iOS的

使用法线贴图网址
<a href="http://maps.google.com?q=http://example.com/mapdata.kml"> 
+0

参见上文:“如果值是一个URL,那么参数不能是q = *(因此KML不会被拾取)”。 – 2011-04-18 19:21:25

+0

'maps:q = myquery'的作品,但你能指出我在哪里可以使用'maps:...'而不是'http:// ...'的文档吗? – 2011-09-28 19:47:51

0

以最简单的形式

地图的地图网址:q = GivenTitle @纬度,经度

相关问题