簡體   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