繁体   English   中英

无法从iOS 7中的UIWebView调用应用程序(URL方案)

[英]Impossible to call application (URL Scheme) from UIWebView in iOS 7

有点奇怪的情况。 我们与外部合作伙伴合作,该合作伙伴公开了一个可供用户登录的网页。该网页采用名为returnURL的参数。 成功登录他们的服务后,将调用returnURL ,在此返回URL的末尾,我们的外部合作伙伴将添加一个令牌,供以后在应用程序中使用。

因为我在iOS中工作,所以我作为应用程序的URL方案作为returnURL,以便登录后网页可以调用它。

因此,它像这样。 他们的网页:

http://www.theirwebpage.com/?param1=x&param2=y&returnURL=myAppsName://

我在application:openURL:sourceApplication:annotation:以及application:openURL:sourceApplication:annotation:显示该网页application:openURL:sourceApplication:annotation:我有返回的代码,在这里我解析了通过myAppsName://传递的参数

问题

整个过程在iOS 6上运行良好,因为Webview会调用应用程序的URL方案,这将触发application:openURL:sourceApplication:annotation:

但是,在iOS 7中永远不会调用application:openURL:sourceApplication:annotation:方法。似乎webview本身将其自身称为myAppsName://{parameters} ,然后失败(有关进一步的解释,UIWebView会调用webView:didFailLoadWithError:并且在其NSErrorFailingURLKey我们可以找到完整的myAppsName://extraParam1=bar&token=foo )。

iOS 7是否发生了更改,不再允许这种类型的调用(从UIWebView到应用程序本身)?

xcode 5.0出现问题。 下载xcode版本5.0.1。 清理所有版本〜/ Library / Developer / Xcode / DerivedData /〜。 重新构建。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM