我的应用程序中有一个UIWebView
,
-(void)viewDidLaod{
NSURL *url = [NSURL URLWithString:@"some url string"];
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadRevalidatingCacheData timeoutInterval:30.0];
myWbView.delegate = self;
[myWebView loadRequest:request];
if ([timer isValid]) {
[timer invalidate];
}else{
timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(addSec:) userInfo:nil repeats:YES];
//counting seconds
}
-(void)webViewDidFinishLoad:(UIWebView *)webView{
if (webView.isloading){
NSLog(@"LOADING");//it takes 5-8 seconds in average keep logging this
}else{
NSLog(@"FINISH");//since the request started,8-15 seconds later this is logged out
}
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
NSLog(@"LOAD FAIL: %@",error);
}
这是我要加载的网页pageViewController
,我将 webview 控制器放入其中,每次滑动到下一页时都会启动新的加载请求。
(当刷出视图dealloc时,我会停止任何未完成的加载,因此它不会阻塞网络踏板)
有时我会收到一些错误消息,例如:
作为应用程序开发的新手,我完全不知道我的代码有什么问题,是某个线程卡住了还是使用 JavaScript/HTML5 的网页对速度很重要?
我研究了使用 webview 加载内容页面的 Flipboard 应用程序(iOS7 版本),它会在用户点击任何帖子后立即响应。即使 的加载速度UIWebView
通常很慢,也可以实现更快的性能。
我应该知道的任何建议的指南链接/背景知识将不胜感激。
PS:由于WKWebView
只有 iOS8 和更高版本才支持另一个更好的东西(在我的应用程序WKWebView
中加载速度与 相同,但在HTML5 测试站点UIWebView
得分更高),我仍然需要 iOS7 的 UIWebView。