资源文件更新逻辑设计

1 资源文件更新
1.1 规则:
1.1.1 资源文件存在于三个位置:app内、更新目录内、更新服务器上。任何位置的资源文件,相对路径保持一致。
1.1.2 本地保存根路径:app-storage://
1.1.3 单个文件版本控制:不做。每次需要更新时清除更新目录,重新下载全部可更新资源。
1.1.4 加载顺序:更新目录→app目录→更新服务器(即使更新到本地失败,该资源也应可以直接从服务器读到)
1.2 特殊文件:
1.2.1 config_base.ini:默认配置文件,包括基础版本号(该app发行包的默认资源版本号)。此文件不做更新。
1.2.2 version.xml:记录当前资源版本
1.2.3 config.ini:当前版本的配置文件,包括该版本资源文件列表
1.3 更新流程:
1.3.1 从服务器上更新version文件,对比本地的版本,确认是否需要更新
1.3.2 从服务器上更新config文件
1.3.3 解析config文件进行部分初始化
1.3.4 从config中读取资源文件列表,并更新
1.3.5 若更新时,本地文件写入失败,继续流程
 
2 缓存
2.1 规则:
2.1.1 缓存文件保存路径:app-storage://cache/
2.1.2 缓存文件不保持完整路径,文件路径做以下转换:
         imgDomain起始的url:将imgDomain去除,用剩余的路径做转换
         其他host的url:保存host和path部分(即目前写死为http,若有需求使用其他协议再改),路径按规则转换
         转换规则:将路径中的"/"、"?"改为"~"
         例:http://math.zuoyebao.net/latex/png?tex=123,转换后变为:math.zuoyebao.net~latex~png~tex=123
2.2 缓存有效期控制:TODO
2.3 缓存移除策略:当缓存大小超过上限时,全部清除

转载于:https://www.cnblogs.com/jason-beijing/p/10328013.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值