我正在开发一个测量网页加载时间长度的项目。 我通过在活动中使用不可见的WebView,然后测量不同WebClient的方法之间的时间来做到这一点,但是我在测量称为“设置时间”的东西时遇到了问题,这基本上是请求网站和时间之间的时间差。网站开始下载/呈现。
我试图通过通知我打电话的时间来实现这一点 webview.loadUrl()和 webclient.onPageStarted()事件。它工作正常,除非我尝试一个接一个地测量多个站点。 第一个站点的设置时间约为0.2s到1s,第二个站点的设置时间从0.05到0.2s,最后一个站点总是在0.001-0.002s范围内,这根本不可能是真实的。
每次都会发生这种情况,而不仅仅是一次 - 设置时间不断减少到大约0.002秒。
你有什么提示为什么会这样?为什么onPageStarted被如此快速地调用? 谢谢
startTime = System.currentTimeMillis();
Log.i("MEASUREMENT", "loadUrl");
wv.loadUrl( currentURL, noCacheHeaders );
然后
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
Log.i("MEASUREMENT", "onPageStarted");
setupTime = (System.currentTimeMillis()-startTime)/1000.0;
}