私の目的は、アプリの中断(たとえば、読み取られる着信SMS)を超えてWebセッションを継続することです。
アプローチA: 次のようにUIWebViewのコンテンツをNSUserDefaultsに保存しようとしました。
NSData *webViewData = [NSKeyedArchiver archivedDataWithRootObject:webView];
[[NSUserDefaults standardUserDefaults] setObject:webViewData forKey:kDefaultsWebViewObjectKey];
次に、次のように復元します。
NSData *dta = [[NSUserDefaults standardUserDefaults] objectForKey:kDefaultsWebViewObjectKey];
webView = [NSKeyedUnarchiver unarchiveObjectWithData:dta];
ただし、内容は含まれていません。
アプローチB: UIWebViewのコンテンツを次の方法で取得しようとしました。
NSString *content = [webView stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML;"];
次に、それを保存し、再度取得して、UIWebViewで次のように設定しようとします。
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL
しかし、innerHTMLjavascriptはコンテンツ全体を返していません。
アイデア、提案などはありますか?