Я пытаюсь заархивировать мой UIWebView
объект с помощью NSKeyedArchiver
и восстановить его позже с помощью NSKeyedUnarchiver
в том же состоянии.Архивирование / разархивирование работает, но UIWebView
пусто при повторном архивировании (я заархивировал его с загруженным веб-сайтом), но мне нужно, чтобы он был на том же сайте, что и до того, как я его заархивировал.
Я пытался сохранить HTTPBody
из NSURLRequest
из UIWebView
, но это всегда возвращает (null)
, поэтому я думаю, что я лаю там не то дерево.(или я ошибаюсь?)
Вот что я попробовал:
UIWebView*currentWebview = [[Controller sharedInstance] mainWebView];
NSData*webViewData = [NSKeyedArchiver archivedDataWithRootObject:currentWebview];
[sub setObject:webViewData forKey:@"Instance"]; //saves and decodes correctly, but that's a blank `UIWebView` even though I saved it with contents being loaded
NSData*body = [[currentWebview request] HTTPBody]; //returns (null) always, but the webview is not null and has a valid request
[sub setObject:body forKey:@"HTTP_Body"];
Что мне здесь не хватает?Мне нужно сохранить UIWebView
, как это было, и загрузить его снова в том же состоянии без необходимости открывать URL на более позднем этапе.
И да, я знаю о document.documentElement.outerHTML
и document.documentElement.innerHTML
, но это не , что я ищу.Мне нужно сохранить весь сайт на потом, а не только HTML-код.
Спасибо!