赞
踩
工作中遇到一个问题,应用加载H5网页后,页面上用于切换网页下方显示内容的类似tab的按钮点击无效,然而该按钮在手机浏览器上可以正常运行。后来发现是自己的websetting设置不对,只需要加入settings.setDomStorageEnabled(true)即可。
原因是由于没有开启DOM Storage,H5的一些数据没能缓存进来导致的。
WebSettings settings = mWebView.getSettings(); settings.setJavaScriptEnabled(true); settings.setJavaScriptCanOpenWindowsAutomatically(true); //启用数据库 //settings.setDatabaseEnabled(true); //settings.setAllowContentAccess(true); //settings.setAppCacheEnabled(false); //settings.setBuiltInZoomControls(false); //settings.setUseWideViewPort(true); //settings.setLoadWithOverviewMode(true); settings.setDomStorageEnabled(true);//就是这个设置没加导致的问题 //https与http混合资源处理,android5.0开始不能同时加载http和https资源 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); } //页面加载 mWebView.setWebChromeClient(new WebChromeClient() {}); mWebView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); } });
关于webview的缓存可以看以下链接https://www.jianshu.com/p/5e7075f4875f,https://blog.csdn.net/b7223058/article/details/77879428
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。