【发布时间】:2014-05-25 07:37:33
【问题描述】:
我希望 UIWebView 离线工作。当我第一次访问 url 时,我已经完成了以下代码以 webViewDidFinishLoad 方法将数据保存在文档目录中。
NSCachedURLResponse* response = [[NSURLCache sharedURLCache] cachedResponseForRequest:[webview request]];
NSData * data = [response data];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
NSString *filePath = [NSString stringWithFormat:@“%@temp”, basePath];
if (response)
{
BOOL isSaveFile = [NSKeyedArchiver archiveRootObject:data toFile:filePath];
}
当我第二次打开webview 时,我将检查该文件是否存在。我得到文件存在我已经完成以下代码从本地打开文件。
NSData * sData = (NSData *)[NSData dataWithContentsOfFile:filePath];
if (sData.length)
{
[webview loadData: sData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@""]];
}
上面的代码不能正常工作,我得到下面的输出。
请指导我。我做错了什么??
【问题讨论】:
-
你确定数据是“text/html”吗?
-
@sage444 未修复,但大多数时候我得到 .pdf 文件或有时是网站 url。
标签: ios nsdata nsurl loaddata uiweb