Tinker热修复框架接入

本文介绍了如何接入腾讯的Tinker热修复框架,包括在项目中配置依赖、创建必要的文件、初始化Tinker、生成和应用补丁的步骤。同时也提到了遇到的问题和解决方案,以及对于大型项目建议使用阿里Sophix的考量。
摘要由CSDN通过智能技术生成

Tinker热修复框架接入

Android现在开发App基本都开始接入热修复框架,为的就是能够修复一些线上紧急Bug。热门的热修复框架以及对比,网上介绍的也很多,个人而言就用过腾讯的tinker以及阿里的sophix。

腾讯tinkerTinker简介,根据官方文档接入tinker,然后测试热修复补丁,总是莫名地失败(或许是自己技术太渣)。无奈就不去折腾它,而选择了第三方的tinkerpatch这个sdk,并测试补丁ok。

**注:**参照网上的tinker接入博客,以及官方文档,自己总是搞不定,说是自己技术渣吧,也可能。反正我参照阿里的文档接入sophix就很顺利。

闲言少续,言归正传,以下为接入tinkerpatch的大致步骤

  • 在项目根build.gradle加入依赖配置
  buildscript {
        repositories {
        ...
        maven { url 'https://dl.bintray.com/wemobiledev/maven' }
        maven { url 'https://dl.bintray.com/tinker/maven' }
        }
        dependencies {
        ...
        // TinkerPatch 插件
        classpath "com.tinkerpatch.sdk:tinkerpatch-gradle-plugin:1.2.8"
        }
      }
  • appbuild.gradle中,添加依赖
 apply from: '../tinkerpatch.gradle'
      ​
      ​
      dependencies{
          // 若使用annotation需要单独引用,对于tinker的其他库都无需再引用
        implementation 'com.tinkerpatch.sdk:tinkerpatch-android-sdk:1.2.8'
        annotationProcessor 'com.tinkerpatch.tinker:tinker-android-anno:1.9.8'
        //dex分包,用于tinker
          implementation "com.android.support:multidex:1.0.3"
          ...
      }

  • 根据上面的配置,就需要创建换一个tinkerpatch.gradle文件,路径与appbuilde.gradle同级。一般来说,需要注意两个位置

    1. appKey就是你在tinkerpatch平台上的key

    2. sevenZip的版本和路径配置,对应到你本地的路径。(注意,这里可能你会下载不到,maven仓库配置一下阿里的jcenter比较好)

    3. 7zip文件的下载,7za这个好多人没有,需要https://www.7-zip.org/download.html这里面的download目录下

      7-Zip Extra: standalone console version, 7z DLL, Plugin for Far Manager这一栏。然后解压到你对应路径,配置到下面就好。

    4. com.tencent.mm:SevenZip:1.2.12有时候加载不出来,你就在app的buidle.gradle中添加这个依赖implementation com.tencent.mm:SevenZip:1.2.12来下载,就好。

    5. 这里用到一个变量 appversionName需要你配置在gradle中的一个变量,就是app的版本号。可以在根目录的gradle.properties中配置,如:

 appVersionCode=16
          appVersionName=2.0.2

注意,有时候AS设置中去掉compile设置项下的--offline参数比较好

 i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值