Mon objectif: poursuivre une session Web en cas d'interruption d'une application (par exemple, SMS entrant lu).UIWebView incl. codage/décodage de contenu
Approche A: J'ai essayé de stocker le contenu d'un UIWebView dans NSUserDefaults, comme ceci:
NSData *webViewData = [NSKeyedArchiver archivedDataWithRootObject:webView];
[[NSUserDefaults standardUserDefaults] setObject:webViewData forKey:kDefaultsWebViewObjectKey];
puis restaurer comme:
NSData *dta = [[NSUserDefaults standardUserDefaults] objectForKey:kDefaultsWebViewObjectKey];
webView = [NSKeyedUnarchiver unarchiveObjectWithData:dta];
mais cela ne inclure le contenu.
Approche B: J'ai aussi essayé d'obtenir le contenu du UIWebView avec:
NSString *content = [webView stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML;"];
puis le stocker et le récupérer à nouveau, puis essayer de le mettre dans le UIWebView avec:
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL
mais le javascript innerHTML ne retourne pas tout le contenu.
Des idées, des suggestions, etc.?
malheureusement que retourner une chaîne vide –
Oups, il devrait être document.documentElement.outerHTML – rpetrich