Code Push是微软提供的一套可以热更新React Native的服务。可以使用微软的服务器也可以自己部署服务器。
1.安装Code Push
使用命令npm install -g code-push-cli安装Code Push。
2.注册Code Push账号
在终端输入code-push register就会跳转到授权网页,授权完成后,CodePush会显示你的Access Key,复制输入到终端即可完成注册并登陆。
(如果不输入code-push logout退出登录命令,登录状态会一直有效)
3.在终端输入code-push app add <appName> <os> <platform>即可完成创建项目。
4.在要集成的项目输入npm install --save react-native-code-push下载code-push到项目,然后分别集成到IOS、Android,项目中填写创建项目的Key。
5.在React Native根组件componentDidMount中添加更新代码
codePush.checkForUpdate(deploymentKey).then((update) => { if (!update) { Alert.alert("提示", "已是最新版本--", [ { text: "Ok", onPress: () => { console.log("点了OK"); } } ]); } else { codePush.sync({ deploymentKey: deploymentKey, updateDialog: { optionalIgnoreButtonLabel: ‘稍后‘, optionalInstallButtonLabel: ‘立即更新‘, optionalUpdateMessage: ‘有新版本了,是否更新?‘, title: ‘更新提示‘ }, installMode: codePush.InstallMode.IMMEDIATE, }, (status) => { switch (status) { case codePush.SyncStatus.DOWNLOADING_PACKAGE: console.log("DOWNLOADING_PACKAGE"); break; case codePush.SyncStatus.INSTALLING_UPDATE: console.log(" INSTALLING_UPDATE"); break; } }, (progress) => { console.log(progress.receivedBytes + " of " + progress.totalBytes + " received."); } ); } }
6.输入命令code-push release-react <appName> <platform> [options]即可发布更新版本。
参数包括更新面向的版本号、是否强制更新、发布到Staging或Production等。