ios - UIWebView href 打开 map 应用程序失败

标签 ios dictionary

我有一个带有如下链接的 UIWebView:

<a href="maps:saddr=Current Location&amp;daddr=Some place on Earth@38.043316,-120.397757">Get Directions</a>

在 Safari Mobile 中,此链接工作正常并打开带有当前位置的 map 应用程序到纬度/经度方向,但在我的 iPhone 应用程序中的 UIWebView 中它会导致此错误:

didFailLoadWithError:Error Domain=WebKitErrorDomain Code=101 "The URL can't be shown"

我已将以下代码添加到我的 shouldStartLoadWithRequest 中,它检查非标准方案并尝试使用内部应用启动它:

if (![url.scheme isEqual:@"http"] && ![url.scheme isEqual:@"https"] ) {
     if ([[UIApplication sharedApplication]canOpenURL:url]){
          [[UIApplication sharedApplication]openURL:url];
          return NO;
     }
}
return YES;

我做错了什么?这曾经在以前的 iOS 版本中有效。

最佳答案

正确的 URL 不再以“ map ”开头。而是使用“http”。您还需要指定谷歌服务器。

这是相关文档的链接:Map Links

在您的情况下,它看起来像这样:

http://maps.google.com/maps?saddr=Current Location?daddr=Some place on Earth@38.043316,-120.397757

请注意,此代码未经测试,因为我现在不在我的开发机器附近。

关于ios - UIWebView href 打开 map 应用程序失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5774273/

相关文章:

python - 如何创建具有某些特定值行为的字典

ios - 内存泄漏 - NSData 和 NSMutableString

ios - 如何访问类常量和变量

ios - 缓存 UIViewController 用于呈现/推送

python - 从 Dicts Python 3 中去除换行符

javascript - 反转 ES6 映射

ios - 在隐藏状态栏的情况下更改应用程序时自动调整 View

ios - 解码 H264 VideoToolkit API 失败,在 VTDecompressionSessionCreate 中出现错误 -8971

java - 哪个更好地遍历 HashMap 中的每个条目?

java - 具有多个类的上限 - Java 泛型