NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

阿里热修复技术,减少在 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:464323
用户头像

发布了 162 篇内容, 共 71.6 次阅读, 收获喜欢 196 次。

关注

评论

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

什么是区块链?| 社区征文

TiAmo

区块链 以太坊 年中技术盘点

Boundless Hackathon @Stanford 主题黑客松活动闭幕,一文回顾

大瞿科技

2023牛客网最新版Java面试题大全带答案 1400多题(限时分享)

采菊东篱下

java面试

多模型构建的多层级权限管控体系

BinTools图尔兹

运维 权限 dba 数据库管理 数据库管控工具

对线面试官-Redis(八 基于哨兵HA的原理)

派大星

Java 面试题

本周精彩直播预告!CXL 技术及应用研究&一站式构建平台 ABS,今天开讲 | 第 85-86 期

OpenAnolis小助手

开源 基础设施 内核 龙蜥大讲堂 abs

百度 App 启动性能优化实践篇

百度Geek说

百度 性能优化 企业号 7 月 PK 榜

ChatGPT如何助力DevOps|用例解读

EquatorCoco

人工智能 DevOps ChatGPT

向量数据库的崛起:从矢量搜索到深度学习 (一)

极限实验室

自然语言处理 深度学习 Embedding 向量数据库 矢量搜索

AI 2.0来袭,AIGC如何重新定义招聘?

用友BIP

招聘

成长力量 | 神州数码:我们和阿里云是市场和技术的共同体

新云力量

数字经济 神州数码 成长力量

Linux查看进程PID的方法?

百度搜索:蓝易云

Linux 运维 云服务器 PID 虚拟主机

【ACL2023】基于电商多模态概念知识图谱增强的电商场景图文模型FashionKLIP

阿里云大数据AI技术

人工智能 自然语言处理 nlp 企业号 7 月 PK 榜

三种不同的渲染到底是啥?

Finovy Cloud

MyBatis查看详情

猫九

StoneDB首席架构师李浩受邀采访:浅谈KPI与开源的可持续发展,认可长期主义很重要

StoneDB

MySQL 数据库 开源社区 StoneDB

【ACL 2023】面向轻量化文图检索的Dual-Encoder模型蒸馏算法ConaCLIP

阿里云大数据AI技术

人工智能 自然语言处理 算法 nlp 企业号 7 月 PK 榜

【HDC.Cloud 2023】小白与AI在华为云Codelabs的第一次邂逅

华为云PaaS服务小智

软件开发 华为云 华为开发者大会 代码示例

火山引擎 DataLeap 构建Data Catalog系统的实践(二):技术与产品概览

字节跳动数据平台

MyBatis查询所有

猫九

mybatis

D3可视化

猫九

D3

vue基础知识

猫九

Vue

langchain:Prompt在手,天下我有

程序那些事

#LangChain AI大语言模型 大语言模型

Spring5 中更优雅的第三方 Bean 注入

江南一点雨

Java spring

Ubuntu、CentOS修改时区、设置24小时时间格式教程。

百度搜索:蓝易云

云计算 Linux ubuntu centos 运维

支付宝小程序云产品发布会:6大产品20项亮点全揭秘

陈橘又青

小程序 云开发

OpenHarmony 4.0 Beta1发布,邀您体验

OpenHarmony开发者

OpenHarmony

百度实力担当!大模型标准化“国家队”联合组长

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

10分钟入门Flink--了解Flink

不焦躁的程序员

Java 大数据 flink

PyTorch模型创建与nn.Module

timerring

PyTorch

华为云CodeArts DevSecOps系列插件——助力更高效的软件研发

华为云PaaS服务小智

华为 软件开发 华为云 华为开发者大会

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