集成步骤
权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
添加依赖
compile 'com.alipay.euler:andfix:0.5.0@aar'
自定义application
public class MyApp extends Application {
private static final String TAG = "123456789";
private static final String APATCH_PATH = "/out.apatch";
private PatchManager mPatchManager;
@Override
public void onCreate() {
super.onCreate();
mPatchManager = new PatchManager(this);
mPatchManager.init("1.0");
mPatchManager.loadPatch();
try {
String patchFileString = Environment.getExternalStorageDirectory()
.getAbsolutePath() + APATCH_PATH;
Log.i(TAG, "onCreate: "+patchFileString);
File file = new File(patchFileString);
if (file.exists()){
mPatchManager.addPatch(patchFileString);
Log.i(TAG, "补丁包存在>>>>" + patchFileString);
}else{
Log.i("123456", "补丁包不存在");
}
} catch (IOException e) {
Log.e(TAG, "", e);
}
}
}
生成补丁包的代码
./apkpatch.sh -f bug.apk -t fix.apk -o dennis -k key.keystore -p 密码 -a 别名 -e 别名密码
⚠️这里的别名没有后缀
工具可以自己去github下载
测试 4.4.2失败 直接崩掉
5.1 6.0均ok
看其他用户 都表示5.0以下 兼容很差