我搜索了很多但是找不到用iOS测量网页加载时间的方法。 在应用程序中,我想显示某些页面加载时间..是否可以使用iOS sdk或第三方sdk?
由于
答案 0 :(得分:3)
你可以加载一个URL请求并使用NSDate来查看它花了多长时间......让我们假设您使用UIWebView来显示您的页面,以便测量加载时间,我将捕获请求URL的时间然后在委托方法 - (void)webViewDidFinishLoad:(UIWebView *)webView再次捕获时间并采取差异,例如
//lets say this is where you load the request and you already have your webview set up with a delegate
-(void)loadRequest
{
[webView loadRequest:yourRequest];
startDate=[NSDate date]
}
//this is the delegate call back for UIWebView
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSDate *endDate=[NSDate date];
double ellapsedSeconds= [endDate timeIntervalSinceDate:startDate];
}
如果你想在没有UIWebView的情况下这样做,你可以使用NSURLRequest / NSURLConnection ...你可以做以下事情(我会同步地做你也可以做异步)
NSDate *start=[NSDate date];
NSURLRequest *r= [[ [NSURLRequest alloc] initWithURL:url] autorelease];
NSData *response= [NSURLConnection sendSynchronousRequest:r returningResponse:nil error:nil];
NSDate *end=[NSDate date];
double ellapsedSeconds= [start timeIntervalSinceDate:end];
答案 1 :(得分:0)
假设您正在使用UIWebView
,则可以设置其delegate
,并在代理的-webViewDidFinishLoad:
方法中记下时间。此时间与之前调用webview的-loadRequest:
方法之间的差异应该会为您提供加载时间。