RN热更新CodePush

CodePush 是App Center 中的一种云服务,通过它我们可以为React Native实现动态部署和热更新(例如,JS、HTML、CSS 和图像更改)。 在 App Center 上创建的所有 React Native 应用程序默认启用 CodePush; 要开始使用 CodePush,您需要执行以下步骤:


CodePush注册

安装appcenter-cli

npminstall-g appcenter-cli

登录AppCenter

appcenter login

然后会打开一个浏览器界面,如果没有账号创建一个账号并登录,之后会出现:


3f2f33fbb6ed84bd5b2baac907644aed3b959b95

复制上面的token。

如果没有出现可以重新执行下上面命令。

之后在终端输入Access code,然后会得到一个登录用户名:



获取部署秘钥

查看你的AppCenter中有哪些应用:

appcenter apps list



为应用创建部署秘钥:

appcenter codepush deployment add -a  crazycodeboy/RN2-Android Staging

appcenter codepush deployment add -a  crazycodeboy/RN2-iOS Staging

查看应用的部署秘钥:

appcenter codepush deployment list -a crazycodeboy/RN2-Android -k   

how can i get deployment key for development?

至此,使用CodePush前的准备已经完成了


参考官网进行安卓配置
https://learn.microsoft.com/en-us/appcenter/distribution/codepush/rn-get-started

配置完成之后还需要在build.gradle文件最后添加下面代码,修复 codepush 安卓下获取二进制资源修改时间时出错 (Error in getting binary resources modified time)

android.buildTypes.each { buildType ->

    // to prevent incorrect long value restoration from strings.xml we need to wrap it with double quotes

    // https://github.com/microsoft/cordova-plugin-code-push/issues/264

    buildType.resValue 'string', "CODE_PUSH_APK_BUILD_TIME", String.format("\"%d\"", System.currentTimeMillis())

}


这里主要进行ios的配置

安装react-native-code-push

npminstall--save react-native-code-push

然后执行:

npx pod-install

更新AppDelegate.m

在AppDelegate.m中返回[CodePush bundleURL]:





至此,RN的iOS项目集成CodePush完毕

你可能感兴趣的:(RN热更新CodePush)