Webview加载本地js、图片的方法_html/css_WEB-ITnose
程序员文章站
2022-05-22 12:26:05
...
在项目开发中经常会将比较大的js、图片、css等放到app中,而html放服务器,这样在使用时流量较少,加载也比都放服务器上快,其实方法也比较多,网上搜了很久都没结果。
一种是获取服务器返回的html内容后,直接处理返回的html,在引用js、图片的地方替换其资源为本地的“file:///android_asset/”资源,这种方式我没试。
另一种就是直接使用WebViewClient实现
1 webView.setWebViewClient(new WebViewClient(){ 2 @Override 3 public WebResourceResponse shouldInterceptRequest(WebView view, String url) { 4 WebResourceResponse response = null; 5 6 response = super.shouldInterceptRequest(view,url); 7 if (url.contains("m.css")){ 8 try { 9 response = new WebResourceResponse("text/css","UTF-8",getAssets().open("css/m.css"));10 } catch (IOException e) {11 e.printStackTrace();12 }13 }14 return response;15 }16 });
注意最好是使用if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)来区分下版本执行的代码
推荐阅读
-
jquery插件lazyload.js延迟加载图片的使用方法
-
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
-
Asp.Net 将HTML中通过dom-to-image.js标签div内的内容转化为图片保存到本地
-
Flutter中如何加载并预览本地的html文件的方法
-
js HTML5 canvas绘制图片的方法
-
js实现canvas保存图片为png格式并下载到本地的方法
-
JS实现加载时锁定HTML页面元素的方法
-
iOS用WKWebView与JS交互获取系统图片及WKWebView的Alert,Confirm,TextInput的监听代理方法使用,屏蔽WebView的可选
-
JS实现判断图片是否加载完成的方法分析
-
H5 js的FileReader接口即时预览本地图片方法讲解