Webview Loading - 内容完成加载检查
问题描述:
我正在创建一个托管在云服务(heroku)上的应用程序,该应用程序每30分钟不活动一次。该应用程序显示页面加载时的加载活动。由于服务器每30分钟没有请求就会休眠,响应时间可能在2到12秒之间变化。我试图找到一种方法来知道是否满载CSS和JS的内容。 onPageFinished事件不适用于我,大多数时候我都会看到一个空白页面。Webview Loading - 内容完成加载检查
public void load(){
webView = (WebView) findViewById(R.id.web);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.loadUrl(serverURL);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
public void onPageFinished(WebView view, String url) {
LoadingActivity la = new LoadingActivity();
if(la.isNetworkAvailable(MainActivity.this))
LoadingActivity.current.finish();
/* This event is called before all content loaded */
}
});
webView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return (event.getAction() == MotionEvent.ACTION_MOVE);
}
});
}
答
你可以尝试设置WebChrome客户端web视图,它具有负载百分比时,U可以试着听听那一个。
答
我发现最简单的事情就是从javascript文档就绪函数中调用java。
如何?请添加代码以便了解。 –
WebView.setWebChromeClient(新WebChromeClient(){ @Override 公共无效onProgressChanged(web视图视图,整数newProgress) { super.onProgressChanged(视图,newProgress);} }); –
我仍然有一个空白页面几秒钟。我检查了newProgress == 100。 –