0
如何在互联网可用时加载网页并将其缓存为脱机使用,并且当互联网再次可用时更新为最新版本?使用UIWebView缓存iPhone上的网页
如何在互联网可用时加载网页并将其缓存为脱机使用,并且当互联网再次可用时更新为最新版本?使用UIWebView缓存iPhone上的网页
我假设有一些基本技能可用。这是一个大纲。
使用获取的网页:
NSData *data = [NSData dataWithContentsOfUrl:yoururl];
如果成功的话,使用本地存储的文件:
-(NSString*)cacheFile
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory,
NSUserDomainMask, YES);
return [[paths objectAtIndex:0] stringByAppendingPathComponent:@"cached.html"];
}
[[NSFileManager defaultManager]
createFileAtPath:[self cacheFile] contents:data attributes:nil];
让web视图显示本地页面:
NSData *data = [NSData dataWithContentsOfFile:[self cacheFile]
options:nil error:nil];
[webView loadData:data MIMEType:@"text/html"
textEncodingName:@"UTF-8" baseURL:yoururl];
不要知道你是否可以摆脱我放在这里的所有nil
指针,但如果它不工作查阅文档。并做添加一些检查返回值...
如何以及在哪里检查互联网是否可用? – Yazzmi 2010-07-27 21:37:31
这个请求简直失败了,我想,返回'nil'。否则,您可能需要采取更加复杂的方式:+(id)dataWithContentsOfURL:(NSURL *)aURL选项:(NSDataReadingOptions)掩码错误:(NSError **)errorPtr',这对于出错的地方会更加详细。 – mvds 2010-07-27 22:03:55