微软react-native-code-push热更新笔记

作者: FanChason | 来源:发表于2018-11-19 17:49 被阅读8次

常用命令

终端切换到RN项目根目录下

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

  • 发布rn的bundle到微软服务器
    code-push release-react YourProjectName ios
    code-push release-react <AppName> <PlatName>

code-push release-react YourProjectName ios --t 4.0.0 --dev false --d Staging --des "xxxxx"

  • 将测试版本Staging提升为Production
    code-push promote YourProjectName Staging Production

  • 查看发布的历史记录
    code-push deployment history YourProjectName Staging
    code-push deployment history YourProjectName Production

  • 查看当前code-push账号下面的app
    code-push app ls(或list)

  • 命令来查看deployment key
    code-push deployment ls <APP_NAME> -k

  • 部署到自己(公司)的服务器
    code-push login 自己的域名

参考资料:
1,简洁直接的code-push使用教程(快速上手建议看这个):https://www.jianshu.com/p/67de8aa052af
2,深入分析的教程:https://www.jianshu.com/p/9e3b4a133bcc
3,官方文档(对照上面的博客看):http://microsoft.github.io/code-push/docs/react-native.html

常见问题

坑1(iOS):

使用他们的方法打包资源并上传的时候,通过更新,app无法加载出资源文件!

  • 解决:就是把你的结果(main.jsbundle和assets)拖入工程时,对于assets文件夹,你要选择create folder reference,而不是 create folder group. 正确的结果是assets文件夹是一个蓝色的文件夹,整个一起作为bundle resources

坑2(双端):

APP内plist文件写的版本号可能是1.0.0,所以你的reactjs打包上传的版本也要是1.0.0(而不是1.0.1这样递增),你需要和APP保持一致,然后服务器会根据你最新上传的且和APP一样的版本作为最新版。否则热更无效。
参考:https://www.cnblogs.com/rayshen/p/5502538.html

相关文章

网友评论

    本文标题:微软react-native-code-push热更新笔记

    本文链接:https://www.haomeiwen.com/subject/wmzgwftx.html