2017-03-18 64 views
0

到目前爲止,我試過這個,但我得到連接超時錯誤。如何更快地加載網頁視圖與緩存的任何人都可以幫忙嗎?(swift3)我想緩存我的webview內容加載速度更快SWIFT3

這裏是我的代碼

import UIKit 

class test:UIViewController, NSURLConnectionDelegate{ 
var response: URLResponse? 
var error: NSError? 
var NSURLRequestReturnCacheDataElseLoad = 2 
var sesson:URLSession! 
var progressView:UIProgressView! 
var urlData: Data? 
var baseURLString: String = "https://google.com" 

@IBOutlet weak var SubscribeWeb: UIWebView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    var urlString: String = URL(fileURLWithPath: baseURLString).appendingPathComponent("/").absoluteString 

    print("connection urlString = \(urlString)") 
    let request = URLRequest(url: URL(string : urlString)!, 
          cachePolicy:NSURLRequest.CachePolicy.returnCacheDataElseLoad, 
          timeoutInterval: 100.0) 
    print("connection request = \(request)") 
    // var request = URLRequest(url: URL(string: urlString), cachePolicy: URLRequestReturnCacheDataElseLoad, timeoutInterval: 10.0) 
    var connection = NSURLConnection(request: request, delegate: nil) 
    print("connection = \(connection)") 
    if (connection != nil) { 

     do 
     { 

      try self.urlData = NSURLConnection.sendSynchronousRequest(request, returning: &response)// 
      print("self.urlData = \(self.urlData)") 
     } 
     catch (let e) { 
      print("error = \(e)") 
     } 



     let htmlString = String(data: urlData!, encoding: String.Encoding.utf8) 
     //String(urlData,encode(with: String.Encoding.utf8)) 
     // var htmlString = String(urlData, encoding: String.Encoding.utf8) 

     let fileUrl = Foundation.URL(string: baseURLString) 


     SubscribeWeb.loadHTMLString(htmlString!, baseURL: fileUrl) 
     //SubscribeWeb.loadHTMLString(<#T##string: String##String#>, baseURL: <#T##URL?#>) 
    } 
    //ara test 
    //  let url = NSURL (string: "https://google.com/") 
    //  let requestObj = URLRequest(url: url! as URL, 
    //           cachePolicy:NSURLRequest.CachePolicy.returnCacheDataElseLoad, 
    //           timeoutInterval: 10.0) 
    //  // let requestObj = URLRequest(url: url! as URL) 
    //  SubscribeWeb.loadRequest(requestObj) 
    // Do any additional setup after loading the view, typically from a nib. 
} //ara test 
+0

它看起來像你的文章主要是代碼;請添加更多的細節。 –

+0

當我嘗試將一個半大頁面加載到Web視圖中時,需要時間加載。我想要緩存該文件或做一些事情,使該網頁加載到網頁視圖更快.. – solArise

回答

0

不知道,但你必須在當地通過URL此文件中創建的.html文件和寫入數據。可能是工作。

+0

這聽起來合乎邏輯將嘗試它 – solArise