Skip to content

tianyangyang427/LDReactNativeDiffUpdate

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LDReactNativeDiffUpdate

React native增量更新,支持多入口多业务。

增量更新实现机制

目前增量更新采用native实现,后续会暴露功能接口,供js控制更新流程。

为了更好的用户体验,所有业务包进行工程内置,增量包后台下载合并操作,App下次启动更新生效(后续增加立即生效功能)。

增量算法采用bsdiff差异算法。

安装和使用

iOS安装增量更新

工程根目录执行:

npm install --save react-native-diff-update

react-native link react-native-diff-update

打开工程可以看到LLibrariesLDRNDiffUpdate就是增量更新模块。

iOS使用

首先进行相关配置,配置信息在LDRNBundleList.m文件中,核心设置有:

appKey   				//应用唯一标识
rnVersion 				//当前工程使用的React Native版本
originBundles 			//工程内置的业务bundle
originBundlesHash		//业务bundle的md5 (可选)
entryJSName				//bundle入口文件名称
patchFileName			//补丁bundle入口文件名称
versionUrl				//版本请求接口地址

配置好信息后,在自己的需要加载bundle的viewController中引入头文件#import "LDRNDiffUpdate.h",然后指定jsBundle文件名即可:

NSURL *jsCodeLocation = [LDRNDiffUpdate jsBundleUrl:@"LDBusinessEntry"];

android安装增量更新

工程根目录执行:

npm install --save react-native-diff-update-android

react-native link react-native-diff-update-android

android相关配置

在应用启动时启动RnModuleDiffUpdateService这个service,当应用关闭时请停止此service

接口说明

版本请求接口

安全

About

React native增量更新,支持多入口多业务。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 71.5%
  • Objective-C 12.7%
  • Java 9.5%
  • C++ 5.9%
  • Python 0.4%