如何测量移动设备上的网页加载时间?
我想花费网页的加载相似的时间以编程方式确定了一些扩展(例如速度示踪)如何做到这一点。例如,我想知道何时触发某些关键事件,例如网络连接,DOM Load事件和SSL网络计时。如何测量移动设备上的网页加载时间?
因为扩展不支持Android版Google Chrome是有办法做到这一点的代码?
有一个名为 “Navigation Timing API” 的东西,您可在Android版Chrome(和桌面版Chrome,Internet Explorer和Firefox)。
钩Android设备到计算机,并通过遵循this document描述指令使“远程调试模式”。
打开Chrome在您的计算机和访问本地主机:9222访问Android版Chrome的DevTools。
在控制台中,类型如下。
> performance.timing
你就会发现这个样子的(如果崩溃折叠)
connectEnd: 1364275296017
connectStart: 1364275296017
domComplete: 1364275296699
domContentLoadedEventEnd: 1364275296517
domContentLoadedEventStart: 1364275296458
domInteractive: 1364275296458
domLoading: 1364275296304
domainLookupEnd: 1364275296017
domainLookupStart: 1364275296017
fetchStart: 1364275296017
loadEventEnd: 1364275296705
loadEventStart: 1364275296700
navigationStart: 1364275295553
redirectEnd: 1364275296017
redirectStart: 1364275295553
requestStart: 1364275296025
responseEnd: 1364275296273
responseStart: 1364275296264
secureConnectionStart: 0
unloadEventEnd: 1364275296275
unloadEventStart: 1364275296275
您可以找到有关的HTML5Rocks的文章‘Measuring Page Load Speed with Navigation Timing’导航计时API的更多细节。
如果您加载它在自己的WebView你可以使用这样的事情:
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
long doneTime = System.getCurrentTimeInMillis();
int timeToLoad = doneTime - startTime;
}
});
long startTime = System.getCurrentTimeInMillis();
mWebView.loadUrl(yourUrl);
如果您正在寻找特别是在Chrome或Firefox应用来衡量,我不认为有任何真正的解决方案这一点除了尝试用秒表或其他东西手工测量。希望我错了。
我喜欢你提供的方式。 – JackWM 2013-03-26 04:20:34
这是如何离题? – 2013-04-08 07:39:12