开发者社区> 问答> 正文

应用研发平台EMAS上请问热修复支持不同渠道包升级吗?

应用研发平台EMAS上请问热修复支持不同渠道包升级吗?

展开
收起
小小鹿鹿鹿 2024-01-10 13:04:28 43 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    您好,EMAS热修复确实支持不同渠道包的升级。在应用启动时,EMAS会根据渠道包的参数来动态加载对应的资源,从而实现针对不同渠道包的热更新。

    然而,有一些注意事项需要您考虑:

    1. 版本一致性:基础包、修复包、补丁包三个版本号必须一致。如果基础包修改了代码后在其他渠道发布,则建议升级版本号,否则它加载了基础包生成的补丁会报错。

    2. 打包工具:使用和同一个打包机来生成基础包和修复包,打包机的更换可能导致apk代码对比出错。

    3. 补丁通用性:一个热修复不能通用所有的包。如果您使用了微信的Tinker热补丁方案,那么就需要为不同的渠道包打不同的补丁。

    4. 多渠道包测试:支持多渠道包仅选用某个渠道包的补丁,只需要保证变化相同即可,不过对于不同的基线包最好进行全面的测试。

    5. 发布流程:发布前请严格按照补丁发布推荐流程进行,以保证补丁包能够正常在所有Android版本的机型上生效。

    2024-01-13 16:51:18
    赞同 展开评论 打赏
  • 确实,EMAS热修复支持不同渠道包的升级。您只需在EMAS控制台中为不同的渠道包配置相应的参数,应用启动时,EMAS会根据渠道包的参数来动态加载对应的资源。然而,处理不同渠道包时有一些注意事项需要遵循:

    1. 基础包、修复包、补丁包的版本号必须一致。如果修改了基础包代码后在其他渠道发布,建议升级版本号,否则加载了基础包生成的补丁会报错。

    2. 最好使用同一个打包环境来生成新旧apk包。如果必须使用不同的打包环境,生成新旧apk包后,请确认生成的running.log文件中的diff项是否和修改项一致,如果超出修改项,请充分测试超出的修改项在基线包上功能是否正常。

    3. 对于不同的基线包,尽管可以选用某个渠道包的补丁,但最好进行全面的测试。发布前应严格按照补丁发布推荐流程进行,以保证补丁包能够正常在所有Android版本的机型上生效。

    2024-01-13 10:27:45
    赞同 展开评论 打赏
  • 不支持。此回答来自钉群应用研发平台EMAS开发者交流群。

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

相关电子书

更多
五天玩转EMAS Serverless 立即下载
EMAS平台全景介绍 立即下载
低代码开发师(初级)实战教程 立即下载