开发者社区> 问答> 正文

【移动热修复】Sophix何时走即时生效热修复,何时走冷启动修复?

Sophix何时走即时生效热修复,何时走冷启动修复?

展开
收起
EMAS支持组 2022-09-27 13:06:45 337 0
1 条回答
写回答
取消 提交回答
  • 这是根据代码变动情况决定的。

    代码若变动小,一般会走即时生效热修复,而如果代码变动大,比如在已存在的类中新增方法,修改了so等情况,都会走冷启动。这是由打包工具自行检测代码变化来判断的,开发者无需考虑。

    如想测试即时生效,可以:

    1、补丁工具可以不勾选强制冷启动,这样就由工具自行判断是否生成冷/热补丁。

    2、不要改首启动页,加载补丁去修复也是需要时间的。

    3、可以试下改动都是public修饰的类或方法,尽量不要改动static。

    4、资源或so改动一般都是冷启动生效的。

    5、实际建议使用冷启动补丁,热补丁可能少数机型加载有问题,如果使用热补丁,尽量全面测试后再发布。

    上述使用时补丁还未即时生效,想了解具体细节,可以阅读免费电子版《深入探索Android热修复技术原理》,其中代码修复的章节有详细解释。

    并且,在运行期如果在所运行的设备上检测到不支持即时生效热修复,也会在该机型上走强制冷启动修复。

    而如果对稳定性有极高要求,可开启强制冷启动选项,这样任何变动都会按强制冷启动方式打包。

    冷启动:app重启

    热启动:app无需重启


    更多官方信息

    EMAS官网介绍:https://www.aliyun.com/product/emas

    Devops:https://www.aliyun.com/product/emascrash/mobile_devops

    移动热修复:https://www.aliyun.com/product/hotfix

    移动测试:https://www.aliyun.com/activity/emas/mqcexpert

    移动推送:https://www.aliyun.com/product/cps

    HTTPDNS:https://www.aliyun.com/product/httpdns

    EMAS 控制台: https://emas.console.aliyun.com/products

    2022-09-27 13:18:01
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
基于阿里巴巴以及合作伙伴的最佳实践,围绕大前端、云原生领域的相关技术热点(小程序、Serverless、应用中间件、低代码、DevOps)展开行业探讨,与开发者一起探寻云原生时代应用研发的新范式。
问答排行榜
最热
最新

相关电子书

更多
移动热修复新品发布 立即下载
阿里云移动服务新品发布-移动热修复 立即下载
使用Arthas 抽丝剥茧深入应用-线上诊断利器之外 立即下载