一、简介当前市面的热补丁方案有很多,其中比较出名的有阿里的 AndFix、美团的 Robust 以及 QZone 的超级补丁方案。但它们都存在无法解决的问题,这也是正是最后使用 Tinker 的原因。先看一张图对比:1-1:更新对比图Tinker热补丁方案不仅支持类、So 以及资源的替换,它还是2.X-7.X的全平台支持。利用Tinker我们不仅可以用做 bugfix,甚至可以替代功能的发布。T
简介ILRuntime项目为基于C#的平台(例如Unity)提供了一个纯C#实现,快速、方便且可靠的IL运行时,使得能够在不支持JIT的硬件环境(如iOS)能够实现代码的更新官方教程https://ourpalm.github.io/ILRuntime/public/v1/guide/tutorial.html安装Window->packageManager->搜索ILRuntime
转载 2024-04-23 10:02:34
137阅读
HotFix简介:阿里的热补,https://github.com/dodola/HotFix阿里巴巴无线事业部最近开源的Android平台下的无侵入运行期AOP框架Dexposed,该框架基于AOP思想,支持经典的AOP使用场景,可应用于日志记录,性能统计,安全控制,事务处理,异常处理等方面。阿里巴巴的开源热补框架:http://www.jianshu.com/p/14edcb444c51。注意
我们在上文《小朋友也能听懂的Rust网络编程框架知识-Tokio基础篇》对于Tokio的基础知识进行了一下初步的介绍,本文就对于Tokio的用法及原理进行进一步的介绍与说明。目前市面上绝大多数编程语言所编写的程序,执行程序与代码编写顺序完全相同,当然有的读者可能会提到CPU的乱序执行机制,但乱序执行从本质上讲还是顺序提交的,程序在第一行执行完成之后再去执行下一行,并以此类推,是通用的编程模式。在这
转载 2024-09-06 09:21:23
23阅读
腾讯最近开发出一个Tinker,阿里也有一个Dexposed框架,当然还有一个就是今天的主角修复框架AndFix。接下来,我会从它的概念、原理、使用方法等为你详细介绍。1.什么是AndFix? AndFix是阿里巴巴出的一个专门针对Android的修复框架 ,那什么是修复呢?就是不需要重新安装APK而达到修复bugs的目的。 看看阿里巴巴官方对AndFix的描述: 英文好的可以看官网说明文档
Step 1:Bundle构建、加载、更新(1)搭建Build工具AB包的意义:如果我们将资源都放在Resources中,我们客户端的大小会越来越大。所以我们希望将资源打包放到服务端,使用的时候客户端到服务端去下载,这样就可以达到缩包的效果。1)导入xLua将xlua中Asset目录下的文件保持这个结构拖到我们的项目中。2)查找BuildResources下的资源文件进行格式转换和拼接查找依赖资源
原创 2022-11-30 00:12:26
846阅读
1点赞
搞懂android如何加载程序android使用的是Dalvik(4.4之前包括4.4)和ART虚拟机(4.4之后包括4.4),虚拟机运行dex格式的应用程序,dex是class优化后的产物,区别于java虚拟机直接运行class格式的应用程序,由于一个dex文件可以包含若干个类,因此它就可以将各个类中重复的字符串和其它常数只保存一次,从而节省了空间,这样就适合在内存和处理器速度有限的手机系统中使
Android 客户端应用上线以后,一旦出现Bug,一般的解决思路是发修复包升级应用,这种方式不仅耗时,更重要的是用户需要频繁的升级版本,体验不好,所以优化的思路是在不发版本的情况下更新,以期提高用户体验。近期GitHub新出一种非侵入运行期AOP框架Dexposed, 下面简单了解一下这个框架,GitHub地址。简要说明:该框架基于AOP思想,支持经典的AOP使用场景,可应用于日志记录,性能统
每次回家都偷懒,不想整理一下,今天周末,强迫自己整理下,内容一定很全。前言随着app版本升级迭代,难免有些bug会出现,用户升级新版的代价较高,如果能给app打热补丁,更新掉app的bug,岂不更好。Andfixandfix是阿里的一个修复框架更新至今,已经相对完善了,可以满足我们日常需求。它有很多优点,比如: 1.修复免重启app 2.更新包小 3.支持360加固(很多blog上说
从本篇开始将为大家讲解ToLua在unity当中的使用教程。Tolua的框架叫LuaFramework,首先附上下载链接:https://github.com/jarjin/LuaFramework_UGUI_V2这个地址的是UGUI的。下载完之后导入项目,首先,我们要先让这个项目跑起来。首先点击Lua->Clear wrap files,清除所有wrap文件。然后点击LuaFramewor
今天给大家带来阿里巴巴推出的AndFix框架首次给出大家这个框架的地址:https://github.com/alibaba/AndFix 对源码比较感兴趣的同学们可以自行研究代码AndFix介绍AndFix,全称是Android hot-fix。是阿里开源的一个热补丁框架,允许APP在不重新发布版本的情况下修复线上的bug。支持Android 2.3 到 6.0,并且支持arm 与 X86系统架
一、前言最近在看修复相关的框架,之前我们已经看过了阿里的Dexposed和AndFix这两个框架了,不了解的同学可以点击这里进行查看:Dexposed框架原理解析 和 AndFix修复框架原理解析,然后还有最近很火的一个是腾讯的Tinker修复框架,再看他的原理实现的时候,发现了他使用到了开源的文件差分工具bsdiff/bspatch,所以就单独用这篇文章来详细介绍一下这个工具,因为这个工具
最近更新修复的功能在安卓应用上越发火热,更新框架很多,比如AndFix,HotFix,Dexposed以及Nuwa,在考虑兼容性和功能需求之后我还是选择了Nuwa,因为这个框架可以新增类和字段,并且兼容到android6.0系统。现在市面上的更新框架基本原理都是classloader,也就是类加载器,这也就限制了我们不可以修改资源文件,如图片布局等,有这方面需求的小伙伴还要想其他方法,比
# 实现 Android 应用更新框架指南 ## 概述 更新技术能够帮助开发者快速修复应用中的 Bug 或者添加新功能,而无需用户下载整个新版本。本文将指导您如何在 Android 应用中实现更新框架。我们将通过一个系统的流程来完成这个目标,之后深入了解每一步的细节和所需代码。 ## 实现流程 以下是更新的基本流程: | 步骤 | 描述 | |------|------| | 1
原创 10月前
275阅读
简介已经上线的项目发现BUG,紧急修复BUG发布新版本?No,也许你需要AndFix。AndFix 是阿里巴巴开源的 Android 应用修复工具,帮助 Anroid 开发者修复应用的线上问题。Andfix 是 “Android hot-fix” 的缩写。支持 Android 2.3 - 6.0,ARM 和 x86 架构,dalvik 运行时和 art 运行时。AndFix 的分支是 .apat
介绍你所看到的,是一个用于Android应用程序增量更新的开源库。包括客户端、服务端两部分代码。原理自从 Android 4.1 开始,Google引入了应用程序的增量更新。Link: http://developer.android.com/about/versions/jelly-bean.htmlSmart app updates is a new feature o
软件研发中,耗费最多时间的并不是编写代码,而是代码编译和代码不断调试的过程软件试错时间1. Android基础编译流程编译构建的四个步骤:代码编译:将源代码,R文件,AIDL生成的文件等 编译成.class文件代码合成:通过dex工具将.class文件和工程依赖的第三方库文件生成虚拟机可执行的.dex文件,如果使用了MultiDex会产生多个dex文件;资源打包:apkbuilder工具将.dex
Hello! 大家好.前段时间比较忙,今天终于闲下来了.于是研究研究比较高大上的东西. 更新!网上一搜更新,好家伙一点一大堆,各种框架让人应接不暇.最后综合来看选择了 微信的Tinker 修复框架.至于缺点就不多说了 ,网上一大堆,这里我贴一个官方的对比图废话不多,直接进入正题.一:  新建一个空的项目. TrustHotFix里面就是两个Button 和一个TextView.贴一
转载 2023-12-18 20:18:46
75阅读
前言最近项目集成了Tinker,开始认为集成会比较简单,但是在实际操作的过程中还是遇到了一些问题,本文就会介绍在集成过程大家基本会遇到的主要问题。  考虑一:后台的选取目前后台功能可以通过三种方式实现:1、自己搭建后台布丁下发系统2、第三方提供的服务,目前如原微信simsun大神的个人tinkerpatch平台,目前出于内测阶段,暂时免费。后期应该会按下发量对app进行收费。3、腾讯Bu
转载 2024-03-12 04:34:29
65阅读
目前Android修复的技术方案大致可以归类为以下几种:代码修复资源替换动态库替换代码修复代码修复方案可以归纳为以下3种:类加载方案、底层替换方案、Instant Run方案1、类加载方案基于DexPathList.java的findClass方法处理逻辑再利用类加载机制的双亲委托模型来实现Bug类的动态修复2、底层替换方案与类加载方案不同的是,底层替换方案不会再次加载新类,而是直接在N
  • 1
  • 2
  • 3
  • 4
  • 5