android——热修复(补丁)

打包补丁流程

1. 生成基准包 (baseline apk)

首先需要生成一个基准包,后续的补丁都是基于这个基准包生成的:

./gradlew assembleRelease

生成的基准包位于 app/build/bakApk/ 目录下。

2. 修改代码

修复 bug 或进行其他修改后,确保只修改了代码而没有新增或删除资源文件(Tinker 对资源文件的修改有限制)。

3. 配置补丁信息(由于已经配置到单独文件,所以此步可省略)

在 app/build.gradle 中配置 tinkerPatch:

tinkerPatch {
    oldApk = "基准apk路径"
    ignoreWarning = false
    useSign = true
    buildConfig {
        tinkerId = "补丁版本号"
        keepDexApply = false
    }
    dex {
        dexMode = "jar"
        pattern = ["classes*.dex"]
        loader = ["com.xxx.xxx.MyApplication"] // 你的Application类
    }
    lib {
        pattern = ["lib/*/*.so"]
    }
    res {
        pattern = ["res/*", "assets/*", "resources.arsc", "AndroidManifest.xml"]
        ignoreChange = ["assets/sample_meta.txt"]
        largeModSize = 100
    }
    packageConfig {
        configField("patchMessage", "fix bugs")
    }
}

4. 生成补丁包

运行以下命令生成补丁包:

./gradlew tinkerPatchRelease

生成的补丁包位于 app/build/outputs/tinkerPatch/ 目录下,文件名为 patch_signed_7zip.apk

demo地址:https://download.csdn.net/download/wy313622821/91316471

你可能感兴趣的:(android——热修复(补丁))