Iphone无法打开链接到谷歌地图的方向

时间:2015-05-20 13:32:23

标签: google-maps

我有这段代码:

if(navigator.platform.indexOf("iPhone") != -1 || navigator.platform.indexOf("iPod") != -1 || navigator.platform.indexOf("iPad") != -1) {
        window.open("https://maps.google.com?saddr=Current+Location&daddr=" + lat + "," + lon);


}
else {
        window.open("https://www.google.com/maps/dir/Current+Location/" + lat + "," + lon);
        //window.open("https://maps.google.com?saddr=Current+Location&daddr=" + lat + "," + lon);
    }

我知道lon和lat有正确的值。它适用于所有桌面浏览器和我测试的Android手机(给我指示),但是当我在iPhone上运行window.open它加载谷歌地图,它说“找不到路线”..

这段代码不应该和ios设备一起工作吗?

1 个答案:

答案 0 :(得分:0)

您有两种方法可以在iOS应用中嵌入Google地图网址。

在第一个版本中,可以直接在Google Maps for iOS中构建链接以打开地图(或显示街景或方向)。您可以使用Objective-C类和类型创建地图请求,而不是手动创建URL,这样您就可以利用Xcode所期望的所有类型检查和代码提示。

For Direction请遵循以下代码:

GoogleDirectionsDefinition *defn = [[GoogleDirectionsDefinition alloc] init];
defn.startingPoint =
    [GoogleDirectionsWaypoint waypointWithQuery:@"221B Baker Street, London"];
defn.destinationPoint = [GoogleDirectionsWaypoint
    waypointWithLocation:CLLocationCoordinate2DMake(51.498511, -0.133091)];
defn.travelMode = kGoogleMapsTravelModeBiking;
[[OpenInGoogleMapsController sharedInstance] openDirections:defn];

要启动适用于iOS的Google地图应用并可选择执行其中一项受支持的功能,请使用以下格式的网址方案:

comgooglemaps://?parameters

使用“显示方向”方案请求并显示两个位置之间的路线。您还可以指定运输模式。 下面是一个示例网址,用于显示Google NYC和JFK机场之间的公交路线:

comgooglemaps://?saddr=Google+Inc,+8th+Avenue,+New+York,+NY&daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York&directionsmode=transit

希望能帮助!!