文章目录
一、下载官方示例源码
二、处理 TINKER_ID 问题
三、编译 debug 包
四、安装 APK 并运行
五、修改 Gradle 构建脚本中的文件名称
六、修改程序逻辑代码
七、生成 patch 包
八、热修复
九、 源码资源
一、下载官方示例源码
Tinker 官方代码示例 : https://github.com/Tencent/tinker/tree/dev/tinker-sample-android
二、处理 TINKER_ID 问题
下载该 tinker-sample-android 代码 , 先处理 TINKER_ID 问题 , 参考 【错误记录】Tinker 热修复示例运行报错 ( Execution failed for task ‘:app:tinkerProcessD‘ . tinkerId is not set!!! )
解决 " tinkerId is not set!!! " 问题 , 有两种处理方案 :
方案一 :
在 gradle.properties 配置中 , 设置 TINKER_ID 参数 ,
TINKER_ID=1.0 TINKER_ENABLE=true
方案二 : 修改 https://github.com/Tencent/tinker/blob/dev/tinker-sample-android/app/build.gradle 构建脚本代码 , 使 gitSha 方法返回非空字符串 ;
def gitSha() { try { String gitRev = "1.0" if (gitRev == null) { throw new GradleException("can't get git rev, you should add git to system path or just input test value, such as 'testTinkerId'") } return gitRev } catch (Exception e) { throw new GradleException("can't get git rev, you should add git to system path or just input test value, such as 'testTinkerId'") } }
三、编译 debug 包
运行 Gradle 面板中的 " tinker-sample-android / app / Tasks / other / assembleDebug " 任务 , 双击即可 ;
运行 assembleDebug 任务完毕后 , 在 " tinker-master\tinker-sample-android\app\build\bakApk " 目录下 , 会生成
app-debug-0423-21-38-18.apk
app-debug-0423-21-38-18-R.txt
两个文件 ;
还有一种方法 , 在 Terminal 中断面板中 , 执行 gradlew assembleDebug 命令 , 也可以运行 assembleDebug gradle 任务 ;
四、安装 APK 并运行
将上述编译好的 app-debug-0423-21-38-18.apk 安装文件 , 部署到应用中 , 运行应用 :
点击 " SHOW INFO " 按钮 , 即可查看运行效果 ;