React-Native 自己的服务器做热更新
下载路径为docments/bundle
命令打包main.jsbundle和assets,拖入到xcode项目中,选择 Create folder references 。
打开app,判断 docments/bundle 是否存在 main.jsbundle
存在:加载
不存在:加载默认的main.jsbundle,然后将main.jsbundle和assets 拷贝到docments/bundle中
下一次打开即加载docments/bundle中的main.jsbundle
//全量更新
服务器配置:1:是否立即更新 2:是否回滚 3 是否强制更新
有热更新,加载既有的main.jsbundle,弹框提示有热更新。然后下载zip,解压。
如果有资源文件更新,则服务器返回资源文件,解压以后将新的资源文件拷贝到assets文件夹中。
删除现有的main.jsbundle,解压出新的main.jsbundle。重启app,完成热更新
//增量更新
服务器需要对比旧包和新包的差异,bsdiff,得到差异文件
有热更新,下载差异文件,解压后和本地的main.jsbundle进行合并得到新的main.jsbundle。
如果有资源文件更新,则服务器返回资源文件,解压以后将新的资源文件拷贝到assets文件夹中。
删除旧的main.jsbundle。重启app,完成热更新
本文标题:React-Native 自己的服务器做热更新
本文链接:https://www.haomeiwen.com/subject/gcrdfktx.html
网友评论