AppCenter Code Push热更新

codePush已经被微软将其移动到了appcenter中心,后续关于codePush的相关问题都移步到appcenter官网中进行查看https://appcenter.ms

本文只记录通过codePush对React Native项目进行热更新的操作,关于集成方面直接查看官方文档即可(官方集成文档:https://docs.microsoft.com/zh-cn/appcenter/distribution/codepush/rn-updates

本地准备:

  1. 命令如果采用appcenter codepush,则需要安装appcenter插件
  2. 命令如果采用code-push,则需要安装code-push
npm install appcenter -g
nom install code-push -g

集成前,需要在appcenter中创建应用,应用一般会挂在organization下面:

  • 登录状态下https://appcenter.ms/apps中,注意创建Platform选择React Native,android和ios平台需要各自创建应用

             

应用创建成功后,可以通过网页界面查看到应用的key,也可以通过命令查看

appcenter codepush deployment list --app <organizationName>/<appName>

通过app进行应用集成,app发布后,遇到需要进行热更的情况,可以按需要根据一下命令进行热更新

bundle打包命令(android的类似)

react-native bundle --entry-file index.js --bundle-output ./ios/bundle/main.jsbundle --platform ios --assets-dest ./ios/bundle --dev false

发布命令:

// 由于ios配置问题,无法在plist文件中直接读出版本号,因此通过--t参数手动指定app版本号
// 1 appcenter codepush release-react命令,内部会进行bundle的打包,之后进行appcenter校验和上传(如果bundle中的内容和上个版本一致则会上传失败)
appcenter codepush release-react -a organizationName/appName --t 4.1.1  -d Production -m --description "1.测试"
// 2 手动指定bundle和assets目录进行上传发布
appcenter codepush release -a organizationName/appName -c ./ios/bundle --t 4.1.1 -d Production -m --description "1.测试"

在发布后,也可以根据需要在appcenter页面中对发布的热更新进行干预

其他命令自行根据appcenter --help获取:

    deployment                   View and manage your app deployments         
    patch                        Update the metadata for an existing CodePush 
                                 release                                      
    promote                      Create a new release for the destination     
                                 deployment, which includes the exact code and
                                 metadata from the latest release of the      
                                 source deployment                            
    release-cordova              Release a Cordova update to an app deployment
    release-electron             Release an Electron update to a deployment   
    release-react                Release a React Native update to an app      
                                 deployment                                   
    release                      Release an update to an app deployment       
    rollback                     Rollback a deployment to a previous release

猜你喜欢

转载自blog.csdn.net/u010899138/article/details/104097957