【webview】android webview 显示空白页问题解决

情景:测试机联想K900,使用WebView.loadUrl ,百度:http://www.baidu.com

情况:前段时间还是可以打开百度网站的,但是今天发现打不开了,可是输入其他的网站是没有问题的

      比如:http://www.163.com

来源:根据网上一些资料,发现也有很多人遇到了同样的问题,发现说根布局也有关系,但最终经过测试红色标记代            码才是解决的关键。

代码:

           

private WebView webView ;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main_webview);
		this.webView=(WebView) this.findViewById(R.id.WebView);
		this.webView.getSettings().setSupportZoom(false);
//		this.webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
		this.webView.getSettings().setJavaScriptEnabled(true);
		<span style="color:#ff0000;">this.webView.getSettings().setDomStorageEnabled(true);</span>	
		webView.setWebViewClient(new WebViewClient(){   
		        public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error){   
		                  //handler.cancel(); 默认的处理方式,WebView变成空白页   
//		                  //接受证书   
		        	handler.proceed();
		                 //handleMessage(Message msg); 其他处理   
		       }
		 });
		
		this.webView.loadUrl("http://www.baidu.com");
		
	}
布局:

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
android:orientation="vertical" android:id="@+id/tab1" android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <WebView android:id="@+id/WebView"
    	android:layout_width="fill_parent"
    	android:layout_height="0dp"
    	android:layout_weight="1" />
</LinearLayout>

结论: 不同网站的实现是不同,和js,css,Dom结构以及不同缓存机制很大关系,也将导致Android WebView开发的出现不同的问题。

相关文章
相关标签/搜索