2012-09-28 147 views
1

使用UIWebView類,是否有可能在應用程序進入後臺時保存瀏覽會話,然後在應用程序被激活或重新啓動時完全恢復它?根據文檔,UIWebView類確實符合NSCoding協議,但歸檔UIWebView類的實例還會保留頁面的JavaScript狀態(也可能是HTML5本地存儲),以便頁面以相同的方式恢復相同的外觀和完全相同的功能?我的應用程序瀏覽頁面時會使用沉重而分散的圖形和JavaScript,這些頁面在蜂窩上加載的時間太長,因此保存瀏覽會話將是非常非常好的改進。保存和恢復UIWebView瀏覽會話

回答

1

可能不是。即使Safari不這樣做。

所有的UIView類都符合NSCoding,以支持從nib文件解除存檔,建立用戶界面。這是一種特殊情況,而不是其他類存在/不存在的通用目的存檔/解除存檔機制。

可能有一些事情可以做:

  • 保存和恢復滾動位置。
  • 積極緩存數據;查看URL加載系統的文檔,這是UIWebView使用的。它默認會進行一些緩存,但我相信你可以調整它以做更多。
  • 保存並恢復會話cookie,通常會被丟棄(請參閱HTTPCookieStorage)。