热更新&加载器技术(一):概述

最近突发奇想,如果能做一个自更新(热更新)的东西用到项目里,那用户体验不就蹭蹭蹭的往上涨吗?带着这个美好的目标掉进了一个坑,又浪费我好长时间。。。
先在网上搜了一下相关技术,看有没有现成能用的,很可惜,除了一些跟我想的一样的原理分析,也没有其他有用的,那就自己动手吧!
之前做过一个小的热更新器,Qt框架,主要用在win平台,根据一个updateinfo.json来判断哪个文件需要更新,更新完毕后调用外部exe(还卖了点小钱),但现在我要重新定义一下更宏大的目标了。
使用Web框架+H5的可以绕道了。

一、目标

要移植到安卓、linux(苹果理论上也可以,但没设备测试),且除了资源文件外,程序核心逻辑代码也要实现热更新。

二、原理和技术

1、配置文件(UpdateConfig.json):保存了最新项目的版本文件地址(UpdateInfo.json),和更新完毕后要运行的可执行文件文件名与参数、动态链接库的文件名和参数等。
2、升级更新文件(UpdateInfo.json):保存了整个项目的版本号,更新基地址、每个文件的版本号和相对地址等信息。
3、动态链接库:因为要对程序代码实现热更新,所以必须要使用动态连接库技术。
4、安卓:打包库、运行环境等的各种坑,以后慢慢讲。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值