2015-10-20 88 views
0

我創造應用程序,它不與iOS 9.工作網頁視圖不與iOS9

import UIKit 

    class WebViewController: UIViewController, UIWebViewDelegate { 

     @IBOutlet var webView: UIWebView! 
     override func viewDidLoad() 
     { 
      super.viewDidLoad() 
      // Do any additional setup after loading the view. 

      let requestURL = NSURL(string:"http://stackoverflow.com") 
      let request = NSURLRequest(URL: requestURL!) 
      webView.loadRequest(request) 

      webView.delegate = self 

     } 

     override func didReceiveMemoryWarning() 
     { 
      super.didReceiveMemoryWarning() 
      // Dispose of any resources that can be recreated. 
     } 

     func webViewDidStartLoad(webView: UIWebView) 
     { 
      print("Load started") 
      UIApplication.sharedApplication().networkActivityIndicatorVisible = true 
     } 
     func webViewDidFinishLoad(webView: UIWebView) 
     { 
      print("Load finished") 
      UIApplication .sharedApplication().networkActivityIndicatorVisible = false 

     } 
     func webView(webView: UIWebView, didFailLoadWithError error: NSError?) 
     { 
      print("Error = ", error) 
     } 
     func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool 
     { 
      print("URl ", request.URL?.absoluteString) 
      return true 
     } 
    } 

顯示該消息的工作。

二○一五年十月二十○日14:46:29.976 WebViewDemo [2802:84627]加載URL :https://stackoverflow.com/二○一五年十月二十○日14:46:30.041 WebViewDemo [2802:84745]應用傳輸安全性已阻止明文 HTTP(http://)資源負載,因爲它是不安全的。臨時 異常可以通過應用程序的Info.plist文件進行配置。 2015-10-20 14:46:30.160 WebViewDemo [2802:84627]無法加載 錯誤:錯誤域= NSURLErrorDomain代碼= -1022「資源可能不會加載 ,因爲應用傳輸安全策略要求使用 的安全連接。「 UserInfo = {NSUnderlyingError = 0x7fedabe113b0 {錯誤 Domain = kCFErrorDomainCFNetwork Code = -1022「由於App Transport Security策略要求使用 安全連接,因此加載的資源不能爲 。」 的UserInfo = {NSErrorFailingURLStringKey = https://stackoverflow.com/, NSLocalizedDescription =因爲 應用傳輸安全策略需要使用安全 連接的資源無法加載,NSErrorFailingURLKey = https://stackoverflow.com/}}, NSErrorFailingURLStringKey = https://stackoverflow.com/, NSErrorFailingURLKey = https://stackoverflow.com/, NSLocalizedDescription =資源不能因爲 應用傳輸安全策略需要使用安全 連接的負載。}

+0

在IOS 9釹之後,我們需要添加NSAppTransportSecurity在info.plist中 開放的Info.plist作爲源代碼複製並粘貼在最後。 NSAppTransportSecurity NSAllowsArbitraryLoads

+0

我不會說這* *需要被完成。理想情況下,您應儘可能使用安全連接。即HTTPS而不是HTTP。 –

+0

也是導致此錯誤的相同代碼?因爲錯誤是加載堆棧溢出錯誤,而不是Google代碼中的錯誤。因此,對於這個例子(基於你的錯誤)使用'https:// stackoverflow.com'因爲堆棧溢出確實支持HTTPS連接。 –

回答

2

你必須在添加此您的.plist文件

  1. 添加一個NSAppTransportSecurity:字典。
  2. 命名
  3. 添加子項:NSAllowsArbitraryLoadsBoolean:是

enter image description here

希望這會幫助你。

0

在您的.plist文件的NSAppTransportSecurity字典下,將NSAllowsArbitraryLoads鍵設置爲YES。如果NSAppTransportSecurity不存在手動寫入。

enter image description here