Android 热修复框架 (基于类加载机制的代码修复)

网友投稿 652 2022-10-31

Android 热修复框架 (基于类加载机制的代码修复)

Android 热修复框架 (基于类加载机制的代码修复)

Fettler

Android 热修复框架 (基于类加载机制的代码修复)

支持 Android 5.0 以上设备运行时修复,应用无需重启版本更新时要注意dex修复包的清理

1.如何接入

Project层级下的build.gradle文件

allprojects { repositories { ... maven { url 'https://jitpack.io' } }}

Module层级下的build.gradle文件

dependencies { ... implementation 'com.github.dasinwong:Fettler:1.0'}

2.类及其方法介绍

Fettler

热修复核心类

方法描述
init初始化,程序启动时调用
with创建Fettler对象的静态方法
add添加dex补丁文件(可连续添加多个)
listen添加修复监听(选用)
start开始修复
clear清理dex补丁文件(版本更新时)

FixListener

修复监听接口

方法描述
onComplete修复完成时回调

3.使用方法

3.1 程序启动时进行初始化

public class BaseApplication extends Application { @Override protected void attachBaseContext(Context context) { super.attachBaseContext(context); //初始化Fettler Fettler.init(context); }}

3.2 执行修复

//获取补丁包文件(实际环境中通过网络-到本地)File dexFile = new File(Environment.getExternalStorageDirectory(), "XXX.dex");//添加dex文件和监听,开始修复Fettler.with(this).add(dexFile).listen(new FixListener() { @Override public void onComplete() { Toast.makeText(XXX.this, "修复完成", Toast.LENGTH_SHORT).show(); }}).start();

3.3 清理修复包

在版本更新时清理

//直接调用静态方法清理Fettler.clear(this);//创建Fettler对象清理Fettler.with(this).clear();

4.需要权限

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:一步一个脚印实现一个自己的简易MVVM框架
下一篇:针对不同框架的Google材料设计库的精选列表
相关文章

 发表评论

暂时没有评论,来抢沙发吧~