您的位置:首页 > 移动开发

react-native-code-push热更新与app版本的关系

2017-03-19 10:38 302 查看
以下均是使用经验之谈,如果有不同意见的欢迎指出。
本人使用code-push做版本更新还是比较多的,确实是方便,只要不需要动到java层的代码,使用code-push来做版本迭代就是非常方便的;
我们的做法:通常都是先思考好技术路线,然后在一定时间范围内(比如半年内版本),把java层代码预先埋入app内部,在使用到的时候再去使用那部分模块的功能,不过ios我们还是不敢那么放得开,一旦出现个什么意外导致我们的app被下架就尴尬了。

学习新技术我还是比较建议大家去看官方的文档,毕竟是比较专业的人写出来的文档肯定是相当完整的,看别人的见解只能是参考。

1、部署这一块建议去github查看:(避免坑)
https://github.com/Microsoft/react-native-code-push

2、ios与android发布更新的不同之处

1)、说在前面:以下说到的版本是指android的build.gradle里面的versionName,和ios的General的version。
eg:
ios:



android:



2)、android:
android在code-push发布更新的时候,版本独立不影响的位数是两位数。
举例说明:
①、versionName为2.1,和versionName为2.2的两个app版本,
当versionName=2.2的app发布codepush更新的时候,受影响的只有2.2 和2.2.X,X为正整数。
versionName=2.1是不会收到任何影响的,所以后续就需要创建两条线路对不同的版本进行维护。
②、由①可以知道,versionName=2.2.1和versionName=2.2.2两个版本在获取更新上,获取的是同个版本。
当versionName=2.2.2发布更新的时候,versionName=2.2.1的app同样会受到影响接受更新。

总结:从以上特性,我们主要将这个功能用在小版本更新,或者bug修复上。versionName = X.Y.Z的版本中,我们主要发布到应用市场的软件一般都是改变:X.Y的值。
对于创业公司来说,要维护多个软件版本成本是非常高的,所以我们也是尽量要求用户升级到最新版本。

3)、IOS:
IOS在codepush发布更新时,版本独立不影响的位数是三位数。
即iOS版本都是独立不影响,version=X.Y.Z,当codepush发布更新时,只会影响与其X.Y.Z三位数完全相同的版本。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: