热更新步骤:
1全局安装脚手架:(code-push 检测是否已安装)
npm install -g code-push-cli
2创建一个名称为 linkgap4 的项目 到 https://appcenter.ms/apps (可以使用github账号登录)下:
code-push app add linkgap4 android react-native
创建之后会返回一个key(正式签名的key)
Production │ _T6PizP2E3U-rW_xZ_kzxuXTHs3384bdc106-de95-4d22-a828-e8ddb7a57074 │
可以在 https://appcenter.ms/apps 查到项目 linkgap4
3在本地创建 linkgap4 ,并cd 到 linkgap4 添加依赖
yarn add react-native-code-push
4 cd 到 linkgap4链接到项目(增加原生项目的依赖)
react-native link react-native-code-push
这里需要第二步的key
_T6PizP2E3U-rW_xZ_kzxuXTHs3384bdc106-de95-4d22-a828-e8ddb7a57074
5用AndroidStudio打开Android项目在MainApplication查看
new CodePush(getResources().getString(R.string.reactNativeCodePush_androidDeploymentKey), getApplicationContext(), BuildConfig.DEBUG)
6修改版本号,必须改成3段
versionName “1.0.0”
7在 App.js 中加入热更新代码
import CodePush from ‘react-native-code-push’;
const withCodePush = CodePush({ checkFrequency: CodePush.CheckFrequency.ON_APP_RESUME, installMode: CodePush.InstallMode.IMMEDIATE });
export default withCodePush(App);
8正式签名并安装到手机
9热更新测试 cd 到 linkgap4 下:
code-push release-react linkgap4 android --t 1.0 --m true --d Production
修改内容后再敲此命令,测试
按照上面步骤已经完成热更新
下面是一些常用命令:
创建应用
code-push app add [应用名称] [android/ios] react-native
查看所有应用
code-push app list
列出应用的Key
code-push deployment ls [应用名称] -k
发布更新
code-push release-react [应用名称][android/ios] --t [包版本号] --m true --d [Production/Staging]
测试版推送到正式版
code-push promote [应用名称] Staging Production --t [包版本号]