Skip to content

RN热更新方案

热更新历程

一、code-push

  1. "react-native-code-push": "6.2.1", https://github.com/microsoft/react-native-code-push

  2. 保证全局有 node,参考 node 版本 12.22.1,下载 code-push-cli,具备发布人员推送能力

    npm install code-push-cli@2.1.9 -g
  3. code-push-server

缺点: 1.jsbundle不能增量,业务增多,体积变大,更新很慢 2. 配套的客户端react-native-code-push版本固定到旧版本,导致兼容性差,有些机型白屏很久

二、pushy

  1. react-native-update

  2. react-native-update-cli

  3. pushy服务

image-20240123231511217

缺点:1.无法与我们自己的更新系统进行结合。统一版本管理,要两处都要上传基础包,而且要保持一致,不同时间打的包热更新不了

三、 自建热更新服务

hdiffpatch

cli上传jsbundle文件,后端hdiff比较差异,基础包管理, 前端hpatch挂载差异文件

热更新的使用里程: code-push -> pushy -> 自建热更新服务

  1. code-push开源的,无增量更新,react-native-code-push版本固定到旧版本,兼容性差,有些机型白屏很久
  2. pushy
    • 无法与我们自己的更新系统进行结合,统一版本管理,
    • 要两处都要上传基础包,而且要保持一致,不同时间打的包热更新不了
  3. 自建热更新服务

业务优化:1.静默更新

上次更新于: