AndFix

Android 应用热修复工具
授权协议 Apache
开发语言 Java C/C++
所属分类 手机/移动开发、 手机开发工具
软件类型 开源软件
地区 国产
投 递 者 萧远
操作系统 Android
开源组织 阿里巴巴
适用人群 未知
 软件概览

AndFix 是阿里巴巴开源的 Android 应用热修复工具,帮助 Anroid 开发者修复应用的线上问题。Andfix 是 "Android hot-fix" 的缩写。

AndFix 支持 Android 2.3 - 6.0,ARM 和 x86 架构,dalvik 运行时和 art 运行时。AndFix 的分支是 .apatch 文件。

AndFix 方法体取代实现规则:

Bug 修复过程:

使用

生成 .apatch 文件:

usage: apkpatch -f <new> -t <old> -o <output> -k <keystore> -p <***> -a <alias> -e <***>
 -a,--alias <alias>     alias.
 -e,--epassword <***>   entry password.
 -f,--from <loc>        new Apk file path.
 -k,--keystore <loc>    keystore path.
 -n,--name <name>       patch name.
 -o,--out <dir>         output dir.
 -p,--kpassword <***>   keystore password.
 -t,--to <loc>          old Apk file path.

合并 .apatch 文件:

usage: apkpatch -m <apatch_path...> -k <keystore> -p <***> -a <alias> -e <***>
 -a,--alias <alias>     alias.
 -e,--epassword <***>   entry password.
 -k,--keystore <loc>    keystore path.
 -m,--merge <loc...>    path of .apatch files.
 -n,--name <name>       patch name.
 -o,--out <dir>         output dir.
 -p,--kpassword <***>   keystore password.
  • 今天我新开了一个专题,说说热更新和插件化。内容这里注明一下,来自慕课网qndroid老师的热更新插件化课程。不过可能老师考虑课已经过时了,所以下架了。我是之前买的,最近刚开始听。写的有问题的地方大家可以指出来,互相学习。老师讲了很多原理,听着很有帮助,但是我的博客一向是希望大家用的时候可以拿来主义。所以原理的东西我不写了,只记录老师讲述的工作中开发可以用到的部分。 今天我说一下AndFix的使用。

  • 一、熱修復技術作用 線上app BUG緊急修復,不重新發版,不重新安裝,在線遠程修復問題 二、局限性與適用場景 補丁只能針對單一客戶端版本,隨着版本差異變大補丁體積也會增大; 補丁不能支持所有的修改,例如AndroidManifest; 補丁無論對代碼還是資源的更新成功率都無法達到100%。 既然補丁技術無法完全代替升級,那它適合使用在哪些場景呢? 1. 輕量而快速的升級 2.遠端調試 3.數據統

  • Import samplesI/AndFixDemo to your IDE, append AndFixDemo dependencies with AndFix(library project or aar). Build project, save the package as 1.apk, and then install on device/emulator. Modify com.eu

 相关资料
  • 一、概述 最新github上开源了很多热补丁动态修复框架,大致有: https://github.com/dodola/HotFix https://github.com/jasonross/Nuwa https://github.com/bunnyblue/DroidFix 上述三个框架呢,根据其描述,原理都来自:安卓App热补丁动态修复技术介绍,以及Android dex分包方案,所以这俩篇务

  • 问题内容: 我正在寻找用go创建可复制的版本。对于单个项目,我们使用滑行。 因此,例如,我使用: 修复“证明”包的版本。但是,这不适用于工具。例如: 返回成功,但实际上未安装go2xunit,因此我必须使用: 它将 go2xunit 安装到 $ GOPATH / bin 。 问:如何修复go2xunit等工具的版本? 我还注意到,glide表示改用dep,而 dep表示golang已脱离其实现,可

  • 我在google play store中有一个应用程序,在添加计费3V以处理订阅时遇到了一些问题。任何新的订阅者在付款和付款完成并出现在谷歌控制台后都无法访问我的应用程序。 我希望能在我的应用程序中帮助我处理应用程序内购买,代码如下: public static void isUserHasSubscription(Context Context,onCheck onCheck){BillingC

  • 修复和应对办法 克莱斯勒已经在版本15.26.1中修复了这一问题。我们还没有深入地研究这个修复方案,但是最终结果表明现在汽车已经不会再接收输入的TCP/IP数据包。这是在修复前的nmap扫描结果(版本14.25.5) 启动Nmap 6.01( http://nmap.org ) 的时间:2015-07-26 11:23 CDT Nmap scan report for 192.168.5.1 Ho

  • 我是Java的新手,尤其是Java的面向对象编程,我一直收到这个让我发疯的错误。 以下是我的员工超类的一部分: 以及子类CommissionEmployee: 我得到的相同错误是: 这到底是什么意思,是什么原因导致的,我如何修复它?

  • 我试图在Docker中使用Create React App和Node js设置一个开发环境。但当我更改代码时,它不会重新加载更改 通常只使用卷就足够了,但我还添加了:CHOKIDAR\u USEPOLLING=true in ENV,正如create react app官方文档所说,我将代码移到了WSL,因为我在Windows 10上,但仍然是一样的。我用create react app创建了另一

  • 我用的是Android Studio。我没有使用自定义工具栏。只是一个简单的添加到android应用程序。我正在我的主要活动中扩展AppCompatActivity。我尝试了多个解决堆栈溢出的方案,但都不起作用。我想这是因为我的gradle更与时俱进。 这是错误日志:

  • 假设我们在Git中有以下情况: > 创建的存储库: 主服务器中的某些修改发生并提交: 功能1从master分支,完成了一些工作: 同时,在主代码中发现一个bug,并建立一个热修复分支: 该错误在修补程序分支中修复,并合并回主程序(可能在拉取请求/代码审查之后): 功能1的发展仍在继续: 假设我需要功能分支中的修补程序,可能是因为bug也发生在那里。如何在不将提交复制到功能分支的情况下实现这一点?