【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

阿里热修复技术,减少在 App 开发中踩坑

  • 2016-08-25
  • 本文字数:1334 字

    阅读完需:约 4 分钟

估计很多的开发者都有过这样的经历,当 App 发布之后,一旦在客户端出现问题,就只能干着急。紧接着各部门会焦头烂额:重新打包 App、测试、向各个应用市场和渠道换包、提示用户升级、用户下载、覆盖安装……有时候仅仅是为了修改了一行代码,也要付出巨大的成本进行换包和重新发布。

那么,有没有更好、更快的方法能更好更快的解决以上问题呢?当然有,热修复补丁技术。

首先,简单介绍一下热修复补丁(hotfix),它又称为 patch,指能够修复软件漏洞的一些代码,是一种快速、低成本修复产品软件版本缺陷的方式。

在移动开发里,热修复和常规升级不同,指的是在用户无感知的情况下修复应用存在的 bug。和升级软件版本相比,热补丁的主要优势是不用重新发布新版本,上传到各大应用商店,就可以对应用当前版本的缺陷进行修复。

目前,行业内大家所熟知的热修复技术包括:Dexposed、AndFix、ClassLoader 等。这里,我们来概述一下这几个热修复技术都有哪些特点。

1、Dexposed 是阿里巴巴无线事业部第一个重量级 Andorid 开源软件,基于 Root 社区著名开源项目 Xposed 改造剥离了 Root 部分,演化为服务于所在应用自身的 AOP 框架。它支撑了阿里大部分 App 的在线分钟级客户端 bugfix 和线上调试能力。

Dexposed 的 AOP 是实现了纯非侵入式,没有任何注释处理器,weaver 或者字节码重写程序。Dexposed 的集成非常简单,就像加载一个 JNI 库一样,只需要在初始化的时候插入一行代码。

经典案例:

  • 典型的 AOP 编程
  • 仪表化 (测试,性能监控等等)
  • 在线热修复(重要,关键,安全漏洞等等)
  • SDK hooking,更好的开发体验

2、AndFix 是阿里巴巴开源的 Android 应用热修复工具,帮助 Anroid 开发者修复应用的线上问题。Andfix 是 “Android hot-fix” 的缩写。AndFix 支持 Android 2.3 - 6.0,ARM 和 x86 架构,dalvik 运行时和 art 运行时。AndFix 的分支是 .apatch 文件。

生成 .apatch 文件:

合并 .apatch 文件:

想要了解更多

8 月 27 日(周六)20:00-21:00,带你一起来解读那些年热修复带来的坑 解析阿里的热修复解法!

阿里百川 HotFix 从直播当晚开始正式进行公测,感兴趣的读者可以到阿里百川官网了解。

扫码下面的二维码参与8 月27 日的直播活动(直播当天会在群里公布直播链接哦),并在阿里百川论坛( https://baichuan.bbs.taobao.com )跟帖回复“你在开发以及热修复过程中踩过的那些坑,以及对热修复技术领域的吐槽、使用感受”就有机会获得阿里巴巴定制电脑包、阿里百川个性 T 恤精美礼品喔!

  1. 回复内容字数不得少于 50 字;
  2. 回复内容需和热修复领域有关,如建议、使用感受、不爽的点或期待的服务等;
  3. 活动 & 扫码时间:8 月 16 日——8 月 27 日;
  4. 直播时间:8 月 27 日晚 20:00-21:00;

活动奖品

  1. 回复内容质量越高奖品越丰厚,我们会邀请阿里热修复技术专家对回复内容进行评分,得分最高的 3 位将获得——阿里定制电脑包。
  2. 随机抽选出 10 名幸运小伙伴获得——阿里百川定制个性 T 恤;

备注

  1. 活动结束后,小编会通过电话确认实物礼品的邮寄地址,请您配合提供;
  2. 灌水帖不计入发帖量和回帖量;
  3. 获奖者会在活动结束后的 7 个工作日内在本帖下方公布,所有礼品均在活动结束后 7 个工作日内发放;

查看直播内容回顾:百川解码精彩回顾:热修复的坑和阿里的解

申请阿里百川 HotFix 公测:阿里百川官网

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2016-08-25 07:464321
用户头像

发布了 161 篇内容, 共 70.9 次阅读, 收获喜欢 195 次。

关注

评论

发布
暂无评论
发现更多内容

智慧城市管理平台,多规合一平台搭建解决方案

t13823115967

智慧城市

[架构师训练营第 1 期] 第 13 周学习总结

猫切切切切切

极客大学架构师训练营

百分点助力常州科教城上线两大平台 打造国际智慧创新城

百分点认知智能实验室

AI 智慧城市

架构训练营-week13-作业1

于成龙

架构训练营

阿里P8传授给小老弟的Java面试宝典,竟让让小弟也拿到了P8的offer,傻眼了

Java架构之路

Java 程序员 架构 面试 编程语言

Java架构速成笔记:五大专题,1345页考点 看完直接收获腾讯、京东、滴滴offer

比伯

Java 编程 架构 面试 计算机

工厂模式学习

en

设计模式 工厂模式 Go 语言

阿里大牛亲自总结整理的一线互联网公司面试真题及面经(阿里、网易、字节)

Java架构之路

Java 程序员 架构 面试 编程语言

性能优化总结(三)

Mars

系统性能优化案例(秒杀系统)

积极&丧

从“断臂求生”到一骑绝尘,航运巨头马士基如何利用区块链技术力挽狂澜?

CECBC

航运

可视化指挥调度平台搭建,应急指挥调度监控中心建设方案

t13823115967

可视化 指挥调度

泡泡玛特市值千亿背后,我们为什么会为盲盒买单?

脑极体

mybatis一级缓存是啥?5个面试题回答你

田维常

mybatis

在wildfly中使用SAML协议连接keycloak

程序那些事

程序那些事 SAML openid SSO wildfly

科普:区块链中的公链和私链的有什么区别?

CECBC

公有链 私有链

架构师训练营第 13 周课后练习

薛凯

mybatis二级缓存,7个问题拿下它

田维常

mybatis

java代码优化技巧及原理

积极&丧

联邦学习与安全多方计算

DataFunTalk

学习 AI

架构训练营-week13-总结

于成龙

从月薪3K的Java菜鸟,到年薪80W的Java架构师,靠这份文档,让我学习像打怪升级一样简单!

Java架构之路

Java 程序员 架构 面试 编程语言

北纬37°的浪漫与理性,穿越千年的信息之变

脑极体

JVM 垃圾回收原理简述

Mars

架构师训练营第四周课后作业

万有引力

LeetCode题解:18. 四数之和,哈希表,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

列举出常见的Java面试题100+,我靠这个在十月拿到了阿里的offer

Java架构之路

Java 程序员 架构 面试 编程语言

架构师训练营第九周作业

丁乐洪

看了这个你还不懂mybatis缓存,单独找我

田维常

mybatis

万字庖解区块链跨链技术

CECBC

区块链

天下武功,唯”拆“不破之架构篇一 | 技术人应知的创新思维模型 (7)

Alan

架构 个人成长 思维 技术人应知的创新思维模型 28天写作

阿里热修复技术,减少在App开发中踩坑_移动_Lucien_InfoQ精选文章