code push实践
2020-06-06 本文已影响0人
扶搏森
code push可以实现react-native的热更新功能(不需要发布新版本,一般用于紧急bug修复)
配置sdk
1、不要根据第三方博客文章进行配置,code push与react-native的版本挂钩,那些文章都是根据自己当时版本配置的,文章里面也没特殊说明,特别误导用户。
2、react-native link
还是rnpm link
,95%概率配置完之后还是不能使用,成功只能说明人品好😊
2、项目中react-native原生代码很多内容进行了自定义开发,andorid用kotlin,ios用swift。
3、推荐使用手动配置
命令
code-push login http://10.210.40.15:3000 # 登录,这里用的是私服
code-push logout http://10.210.40.15:3000 # 注销
code-push app add <appName> <platform> <language> # 添加项目
eg:
code-push app add CodePushDemoiOS ios react-native # 生成ios的项目
code-push release-react <appName> <platform> # 发布更新
eg:
code-push release-react CodePushDemoiOS ios --t 3.3.4 --dev false --d Production --des "这是第二个更新包" --m true
code-push app remove <appName> # 删除项目
code-push deployment history <appName> <deploymentName> # 查看部署的历史版本信息
eg:
code-push deployment history CodePushDemoIos Production
code-push rollback <appName> <deploymentName> # 部署执行回滚
eg:
code-push rollback CodePushDemoIos Production
code-push rollback CodePushDemoIos Production --targetRelease v4 # 回滚制定版本
code-push 私服搭建
国人开发的,热更新在国内使用比较多,微软的拉取太慢。
使用技术:nodejs、jwt、docker、redis、mysql
# 测试环境
# 部署
sudo docker stack deploy -c docker-compose.yml code-push-server
手动部署
手动部署流程图