Iehshx Fix的使用步骤
一、导入Iehshx Fix框架
首先我们需要进入到应用的build.gradle文件中添加fix到项目中。
classpath ‘com.iehshx:fix:1.0.3’
buildscript {
repositories {
jcenter()
}
dependencies {
classpath ‘com.Android.tools.build:gradle:2.2.2’
classpath ‘com.iehshx:fix:1.0.3’
} }
将fix添加到项目之后,我们需要把它应用在我们的项目之中。
二、将框架应用到项目中
1.在app的build.gradle中加入如下代码:
apply plugin: ‘iehshx.fix’
(可写在任意一行)
2.添加如下参数配置:
hotFix {
includePackage = [];
excludeClass = [];
oldHotFixDir = “C:\hotfix”;
}
参数解释:
1.includePackage 是用来加入需要注入的class文件,可以不输入值,传入空数组即可。
2.excludeClass 是用来添加不需要注入的文件,可以不输入值,传入空数组即可。
3.oldHotFix 之前的patch 目录,用于记录之前的映射关系和混淆关系.
3.添加fixLibrary库
compile ‘cn.iehshx.fixlibrary:1.0.0’
4.添加混淆关系
buildTypes {
debug {
minifyEnabled true
proguardFiles getDefaultProguardFile(‘proguard-Android.txt’), ‘proguard-rules.pro’
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
}
三、写自定义的Application类对框架进行初始化
public class MyApp extends Application {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
HotFix.init(this);
if (new File(Environment.getExternalStorageDirectory().getAbsolutePath().concat(“/patch.jar”)).exists())
HotFix.loadPatch(this, Environment.getExternalStorageDirectory().getAbsolutePath().concat(“/patch.jar”));
} }
代码没什么好讲的就是框架进行了初始化 和加载了patch.jar目录。
当然需我们需要权限的申请,在AndroidManifest.xml 添加如下配置:
这样我们就可以使用fixlibrary啦,当然这个框架是基于gradle1.5版本以后的,在之前的是无法使用的。下一次我将写一个demo带大家一起体验一下热修复框架的强大之处的。