ht-candywebcache-android 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
ht-candywebcache-android 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
ht-candywebcache-android 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 GPL
开发语言 Java C/C++
操作系统 跨平台
软件类型 开源软件
所属分类 手机/移动开发
开源组织
地区 国产
投 递 者 WolfCS
适用人群 未知
收录时间 2017-05-25

软件简介

移动端 Web 资源的本地缓存解决方案,能够拦截 webview 的请求,并优先使用本地缓存静态资源进行响应,以此来对 webview 加载页面性能进行优化。

特点:

  • 协议层拦截请求,透明替换响应

  • 静态资源版本控制及更新策略

  • 资源防篡改策略

  • 静态资源自动打包到应用,及首次安装解压处理

系统要求

该项目支持最低Android API Level 14。

CandyWebCache客户端SDK对服务器的要求

提供给客户端SDK的接口:

  • 版本检测接口,返回信息包括

    • 请求的webapp对应的增量包和全量包信息:版本号、下载地址、md5、url、domains

    • 请求中不包含的webapp则返回全量包信息:版本号、下载地址、md5、url、domains

提供给应用服务器的接口:

  • 更新全量包

    • 根据全量包和历史N(N可配置)个版本的包进行diff包计算

    • 计算各个资源包的md5,并加密md5值

    • 上传增量包和全量包到文件服务,并记录各个包的md5、资源url、版本号信息、domains

服务端功能要求:

  • 计算资源包diff包(使用bsdiff)

  • 上传资源到文件服务器

  • 资源md5计算与加密(加密算法:DES + base64,客户端对称加密秘钥目前是埋在客户端代码中)

  • webapp domains的配置

CandyWebCache客户端SDK对打包方式的要求

  • 打包资源包目录路径要跟url能够对应,如 http://m.kaola.com/public/r/js/core_57384232.js ,资源的存放路径需要是 public/r/js/core_57384232.js 或者 r/js/core_57384232.js

  • 资源缓存不支持带“?”的url,如果有版本号信息需要打到文件名中。对于为了解决缓存问题所采用的后缀形式url,如 http://m.kaola.com/public/r/js/core.js?v=57384232 ,需要调整打包方式,采用文件名来区分版本号。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
4 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部