移动端热修复方案-- 阿里百川HotFix

热修复方案概述:

  1. QQ空间热修复方案
  2. native hook的方案
  3. 微信热修复方案
  4. 手机QQ热修复方案
    • QFix:推荐文章QFix探索之路——手Q热补丁轻量级方案

上述方案,关于热修复都做了许多详细的介绍,对于眼馋而又不想踩坑的懒癌晚期患者,我们只用现成的。 先不细说,我们看下阿里百川的HotFix方案的使用,感受下热修复的快捷:(以下内容来自阿里百川HotFix官方文档

阿里百川HotFix简介

阿里百川HotFix是阿里百川旗下全平台App热修复服务方案。产品基于阿里巴巴首创hotpatch技术,提供最细粒度热修复能力。让您无需等待实时修复应用线上问题。

应用场景

阿里百川HotFix提供的热修复能力,让您对应用程序的控制更加自由。 您可以使用HotFix:

  • 紧急修复线上问题。
  • 快速发布新鲜功能。

为什么选择阿里百川HotFix?

方案比较

当前市面的热修复方案有很多,而阿里百川HotFix是其中唯一同时支持Android & iOS端热修复的产品。与众多的开源项目或者半开源项目相比,我们不仅有AndFix、Wax开源项目团队成员的支持;同时还在其原有基础上对打包、调试工具、补丁版本管理等、安全性上做了升级;更重要的是,结合最新的研究成果,突破了原有开源项目的诸多限制,我们能做到类修复、资源修复、so文件修复的实时生效。

自动屏蔽广告 相比而言,阿里百川HotFix是一个有着多人团队支持并维护的产品,我们承诺对于加入钉钉群咨询的客户,保证工作日内15分钟响应,非工作日亦可当天响应的效率,提供您满意的服务。如果您对于产品满意,欢迎推荐给您的朋友,如果有任何建议或意见,也欢迎加入钉钉群和我们联系,或者直接填写问卷给我们留言,您的声音,是我们的动力!

各平台热修复方案对比

(详情可参考:Android热修复技术选型——三大流派解析

HotFix总体来说最大的优势在于:

  • 补丁即时生效,不需要应用重启;
  • 补丁包同样采用差量技术,生成的PATCH体积小;
  • 对应用无侵入,几乎无性能损耗;
  • 傻瓜式接入。

但是HotFix1.0版本也有美中不足, 比如暂时不支持新增类和资源,so文件的修复等(这些限制均会在一月中的2.0版本全部去掉),但是作为一项定位为线上紧急BUG的热修复的服务来说,能够真正做到BUG即时修复用户无感知,同时保证对应用性能不产生不必要的损耗,在热修复方面不失为一个好的选择。

接入流程&准备工作
接入流程

要完整使用阿里百川HotFix,您需要以下几步操作:(其中前三步为准备工作,见下方文档)

  • 注册阿里百川开发者
  • 创建百川应用
  • 申请产品权限
  • 集成SDK
  • 生成补丁
  • 发布补丁
准备工作(推荐使用Chrome浏览器)

Step1 注册阿里百川开发者

前往注册成为阿里百川开发者

Step2 创建百川应用

如果您已经创建过百川应用,可以直接在指定应用上使用HotFix产品。

如果您尚未创建过百川应用,请前往创建百川应用。

Step3 申请产品权限

您需要在百川开发者控制台申请HotFix产品权限,我们将在1个工作日内完成审批。申请理由请“填写您真实的APP名,说明是否已上应用市场,通过什么渠道了解到百川HotFix。若无APP或还未上线请详细描述具体公司业务。”,审核进度可以加入钉钉群咨询。

  • 选择一个应用
  • 点击“我的产品后台”
  • 选择开通HotFix权限
Android 快速集成

详细操作步骤,请参考官方文档

HotFix管理后台使用说明

此处,手动尴尬?,HotFix管理后台地址打开后无响应(Are you Kidding me?)

Step1 创建应用

HotFix会同步您所有的百川应用,并区分操作系统:Android,iOS。

您也可以在HotFix控制台新增一个百川应用。

您一共可以创建iOS应用10个,Android应用10个。

Step2 获取SDK配置信息

您可以在应用管理页面获取配置SDK所需要的基本信息。包括:

AppID:用于AppID是百川上应用的唯一标识
RSA密钥: RSA密钥是保存在客户端本地用于解密patch包过程中使用的解密密钥。(推荐使用chrome浏览器下载)
App Secret:用于URL请求时生成合法验签标识的key。

特别注意:如找不到下图所示页面,请查看本篇文档开头,区分“百川控制台”&“HotFix管理后台”。

Step3 创建版本

您可以在HotFix控制台创建版本。(推荐使用chrome浏览器)

版本号:用户自行输入,版本号是为以.分割的多段数字,如1.0.1。版本号必须与用户App内的appVersion相同。如果不相同将导致补丁发布不成功。

Step4 上传补丁文件

在版本详情页面,您可以上传补丁文件。

补丁文件名称规范:

Android:文件名必须为 baichuan-hotfix-patch.jar
iOS:文件名必须为 *.zip,对于集成1.2.0之前版本的SDK文件名必须为main.js

如何生成Android补丁文件:见文档生成Patch补丁

如何生成iOS补丁文件:见文档iOS Patch文件生成

也可以浏览补丁状态。

等待中:补丁上传成功,等待操作。
已灰度:补丁正在进行灰度发布。
已发布:补丁已全量发布至所有设备。
已停止:补丁发布行为已暂停。
Step5 发布补丁

HotFix提供了多种发布方式,方便您根据自身业务需要选择性使用。 5.1 本地测试

HotFix提供了调试工具实现本地测试,方便您在正式发布前,在您的手机本地进行测试。 步骤如下:

安装HotFix 调试工具。
使用HotFix 调试工具获取补丁。
Android调试工具使用说明
iOS调试工具使用说明

5.2 灰度发布

HotFix提供灰度发布模式,您可以在控制台设置灰度设备数,系统会将该补丁随机推送至指定数量的设备。其余设备将不会更新该补丁。

设备数:指设备请求更新该补丁的次数,并不等于绝对设备数。例如:1个设备请求了2次更新该补丁,则会消耗掉2的设备数。

灰度后可以根据自身需要停止本次灰度发布,停止后可以选择:

重设灰度发布规则,新的规则中设备数必须大于之前的值。
改为全量发布。
回滚版本(如果存在历史版本)见Step7 发布回滚

5.3 全量发布

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

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

继续全量发布。
回滚版本(如果存在历史版本)见Step7 发布回滚
Step6 停止发布

HotFix提供停止发布功能,用户选择停止发布后,系统将停止该补丁的继续发布。但已加载该补丁的设备会依然保持安装该补丁的状态。

Step7 发布回滚

HotFix提供发布回滚功能,用户选择回滚的目标补丁后,所有该应用版本下的设备都会回滚到目标补丁的版本。

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

当前的版本已停止发布。
该版本之前存在至少一个历史版本。
Step8 继续发布

HotFix提供继续发布功能,用户选择继续发布后,将可以重新设置发布规则。

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

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

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

继续全量发布。
Step9 数据统计

HotFix目前提供两种数据信息。

成功推送设备数:每当有设备发起一次更新请求,且补丁下载成功,则记为一次成功推送。
累计加载设备数:每当有设备成功加载该补丁,则记为一次累计加载。

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

Step10 补丁一键清除

HotFix提供补丁一键清除功能。开发者可以对指定应用版本下面的所有补丁进行一键清除操作。

开发者操作一键清除后,app用户在下一次打开应用时,HotFix SDK将清除本地所有补丁,回滚至该应用版本的无补丁状态!请谨慎操作。
开发者操作一键清除后,管理后台的历史补丁将处于“已删除”状态,开发者不可再对补丁执行除浏览外的任何操作。
为保证一键清除功能可用,请保证iOS SDK版本为1.2.1及以上,Android SDK版本为1.4.0及以上。

写在最后,说实话,做这么一整套的流程,阿里很为我们开发人员用心了。

转载于:https://my.oschina.net/Gxhpro/blog/842764

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值