关闭

android html5页面加载缓存优化

标签: 程序员androidhtml5缓存
688人阅读 评论(0) 收藏 举报
分类:

程序猿日常

苦逼的程序员对自己好点!

LZCache使用

https://github.com/wugemu/WebTest

Application中初始化 代码如下:

//初始化
List<String> cacheList=new ArrayList<String>();//缓存的资源
cacheList.add(".js");
cacheList.add(".css");
cacheList.add(".ico");
cacheList.add(".png");//图片
cacheList.add(".jpg");
cacheList.add(".gif");
cacheList.add(".action?");//页面请求
CacheUtil.initOnlyCache(512 * 1024 * 1024, cacheList);//最大缓存512MB

注:讨论 哪些数据进行缓存

initOnlyCache(long cacheMax,List<String> cacheList) 

cacheMax最大缓存容量,只对cacheList中的文件进行缓存(字符串包含)

initAllCache(long cacheMax,List<String> noCacheList)

cacheMax最大缓存容量,只对noCacheList中的文件不进行缓存(字符串包含)

1首次加载优化

CacheUtil.loadUrl(WebView webview, Content content, String url, Map<String ,String> headpara);

该方法实现webview加载与 html内容请求异步,html内容获取后会立即展示,无需等待资源加载完成,并缓存到本地可同步更新,使用此方法可以实现离线模式(缓存文件完全)。

注: html5中有请求时,需要实现跨域设置;

2缓存机制优化

webView.setWebViewClien(new WebViewClientCache());

示例代码如下:

webView.setWebViewClient(new WebViewClientCache(){
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        // TODO Auto-generated method stub
        view.loadUrl(url);
        return true;
    }
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
    }
    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
    }   

});

0
0
查看评论

Android WebView页面加载优化

目前webapp越来越多,体验也越来越好,为了能够更好的使用WebView展示出流畅的的页面,可以从以下几点做优化: WebView缓存资源文件本地存储减少耗时操作客户端UI优化 可能有人会说了,为什么不做成native的呢,这样就不用那么的麻烦了。如果我需要加载的内容都是静态的,当然做...
  • dliyuedong
  • dliyuedong
  • 2015-07-18 22:46
  • 41171

安卓APP加载HTML5页面解决方案总结

由于H5页面在移动端的兼容性及扩展性方面体现出来的优势,又兼得APP中植入H5页面对应用的灵活性有大大的提升(如活动、游戏的更新等),APP开发不可避免的需要加载一些H5页面,但安卓客户端对网页内容的排版、整理、交互等可能会出现一些不可预料的问题。本文将对安卓端加载网页写一些比较通用,可能避免问题的...
  • zcchange1025
  • zcchange1025
  • 2015-12-02 23:54
  • 17884

Android webView 缓存 Cache + HTML5离线功能 解决

WebView的缓存可以分为页面缓存和数据缓存。           页面缓存是指加载一个网页时的html、JS、CSS等页面或者资源数据。这些缓存资源是由于浏览器的行为而产生,开发者只能通过配置HT...
  • fishmai
  • fishmai
  • 2016-09-01 12:55
  • 6864

Android记录25-WebView实现离线缓存阅读

Android记录25-WebView实现离线缓存阅读前言本篇博客要实现的是一个离线下载和离线阅读的功能,这是很多阅读类app都常见的一个功能,典型的应用就是网易新闻。什么是离线下载?其实这个概念是比较模糊,是离线之后下载呢,还是下载之后离线,但稍微有点脑子的人都知道没有网络之后怎么下载呢?所以离线...
  • wwj_748
  • wwj_748
  • 2015-04-02 18:45
  • 18992

android:webview加载网页速度很慢的的究极解决方案

Android客户端中混搭HTML页面,会出现虽然HTML内容载入完成,标题也正常显示,但是整个网页需要等到近5秒(甚至更多)时间才会显示出来。研究了很久,搜遍了国外很多网站,也看过PhoneGap的代码,一直无解。        一般人堆WebView...
  • mygrilzhuyulin
  • mygrilzhuyulin
  • 2016-12-07 09:21
  • 1760

基于安卓开发后嵌入一个html5开发的项目碰到的问题

苹果手机端没有问题因为苹果默认是打开这些设置的,但是安卓默认是关闭的
  • zhejingyuan
  • zhejingyuan
  • 2016-02-23 15:09
  • 2026

Android的WebView控件载入网页显示速度慢的究极解决方案

Android的WebView控件载入网页显示速度慢的究极解决方案       Android客户端中混搭HTML页面,会出现虽然HTML内容载入完成,标题也正常显示,但是整个网页需要等到近5秒(甚至更多)时间才会显示出来。研究了很久,搜遍了国外很多网站,也...
  • wolfman79
  • wolfman79
  • 2012-09-28 13:45
  • 3722

Android WebView:性能优化不得不说的事

原文链接:http://motalks.cn/2016/09/11/Android-WebView-JavaScript-3/ 版权归作者所有! Mo说:大家通过前两篇文章想必都能顺利的 get 到 WebView 与 JavaScript 交互的技能了。现在 App 嵌入 H5 页面已...
  • u012210186
  • u012210186
  • 2016-09-21 14:48
  • 11244

android应用因为加入js而导致webview一直在加载中的bug解决方案

日前在开发程序的时候发现,有一个应用的webview加载html5页面总是一直在加载中,加载很慢或干脆加载不出来, 但是在其它应用中却没有问题,能很快加载,找了一圈问题原因,脑袋都大了也没找到。今天听浏览器的大牛说可能是 js导致的,尝试在onpause里加入mWebView.pauseTime...
  • mengweiqi33
  • mengweiqi33
  • 2014-09-04 15:41
  • 11108

Android性能优化篇:从缓存管理进行优化

无论大型或小型应用,灵活的缓存可以说不仅大大减轻了服务器的压力,而且因为更快速的用户体验而方便了用户。 Android的apk可以说是作为小型应用,其中99%的应用并不是需要实时更新的,而且诟病于蜗牛般的移动网速,与服务器的数据交互是能少则少,这样用户体验才更好,这也是我们有时舍弃webvie...
  • Iwantyousafe
  • Iwantyousafe
  • 2014-12-01 23:30
  • 950
    个人资料
    • 访问:12681次
    • 积分:245
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:9篇
    • 译文:0篇
    • 评论:2条
    文章分类
    最新评论