Android开发

阿里最新热修复框架sophix集成详解(四):补丁灰度发布、全量

2017-11-21  本文已影响186人  月下溪明

本文更新于2017年11月21日。


注意事项:

应用版本详情页

灰度发布

在应用版本详情页,点击补丁版本列表里的【查看详情】,进入 补丁详情页。


补丁详情页

在刚刚上传完补丁后,补丁处于 等待中 的状态,勾选 灰度发布

设置完设备数,客户端拉取补丁会消耗该设备数,达到灰度设备数后,灰度补丁自动置为停止状态。
设备数:指设备请求更新该补丁的次数,并不等于绝对设备数。

例如:1个设备请求了2次更新该补丁,则会消耗掉2的设备数。

这时,当用户打开客户端,就会拉取线上的补丁,修复程序。
还记得代码中的queryAndLoadNewPatch()方法吗,它的作用去看系列第二篇末尾的sample。

注:

· 只会下载补丁版本号比当前应用存在的补丁版本号高的补丁, 比如当前应用已经下载了补丁版本号为5的补丁, 那么只有后台发布的补丁版本号>5才会重新下载.

· 在上传新的补丁之后,要调试时,如果以往的补丁有处于 已灰度已发布状态,要停止发布。 如果不停止,最新的补丁处于等待中,也就是未发布。那么当你打开客户端,它会拉取以往发布的补丁修复程序,这样会影响你观测调试结果。

· 后台数据可能有少许延迟。

如果当前版本在停止前处于灰度中,继续发布可以:

· 重设灰度发布规则,新的规则中设备数必须大于之前的值。
· 改为全量发布。

灰度状态下继续发布

所以,从灰度发布到全量发布的步骤是

· 先在补丁详情页勾选灰度发布,点击确认发布
· 推送完所有灰度设备后,点击停止发布
· 再点击继续发布,弹出框,选择全量发布

如果当前版本在停止前处于全量发布,继续发布可以:

继续全量发布。

使用回滚功能必需要具备一下几个条件:

· 当前的版本已停止发布。
· 该版本之前存在至少一个全量发布的历史版本。

全量发布

选择全量发布后,将对所有安装了当前应用版本(即之前创建应用时所填写的应用版本号)的设备推送该补丁。

与灰度发布类似,在全量发布会可以根据自身需要停止本次全量发布,停止发布后可以选择:

· 继续全量发布。
· 回滚版本(如果存在历史版本)

添加过滤机型

全量发布后,我们可以添加过滤机型。
不全量发布是不可以添加机型过滤的

image.png
在App版本详情页,点击【添加过滤机型】
点击添加过滤机型弹出框
这里对过滤机型的弹出框参数进行说明:

在控制台中,有相应的系统版本列表可供选择。如果列表中没有需要自定义,请按如下标准获取系统版本。

android.os.Build.VERSION.RELEASE
例如系统版本结果是:7.1

在控制台中,我们有相应的品牌列表供选择使用。如果需要自定义,请按如下标准获取手机品牌,注意实际过滤时不区分大小写。

android.os.Build.BRAND
例如手机品牌是:Xiaomi

目前由于手机机型庞杂,没有提供选择列表供选择,后续会支持。填写手机机型时请按如下标准,不区分大小写。

android.os.Build.MODEL
例如手机型号是:OPPO R11

【注意】如果想设置全部机型,请在自定义机型里面,输入 :all

到这里,sophix集成的全部内容就结束了。阿里热修复官方的文档有点琐碎,我把重点和注意点都挑出来了。读完这四篇,相信你会迅速集成sophix到自己的应用里。

这再给出官方接入文档地址,给还想看官方文档的朋友。官方接入文档

上一篇下一篇

猜你喜欢

热点阅读