为了账号安全,请及时绑定邮箱和手机立即绑定

Tinker 使用教程

标签:
Android

关于Tinker的使用网上很多教程,由于最近项目需要实现热修复,所以就学习了下微信的Tinker 使用,在这记录下方便以后查看。以下是关于Tinker的优缺点。

图片描述
一、Tinker SDK的接入

添加 gradle 插件依赖,在项目的builder.gradle里面添加TinkerPatch 插件

[代码]xml代码:

repositories {

    mavenLocal()
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0'

    //无需再单独引用tinker的其他库
    classpath ("com.tinkerpatch.sdk:tinkerpatch-gradle-plugin:${TINKERPATCH_VERSION}") { changing = true }
}

第二步 集成 TinkerPatch SDK
在app的gradle文件app/build.gradle中
dependencies {

// 多dex 打包的类库compile 'com.android.support:multidex:1.0.1'//无需引入tinker的任何库,使用tinkerpatch sdk即可implementation("com.tinkerpatch.sdk:tinkerpatch-android-sdk:${TINKERPATCH_VERSION}") { changing = true }

}

三、下载官方demo,将项目中的tinkerpatch.gradle文件直接放入自己的项目中,在app的gradle文件app/build.gradle中 添加
apply from: 'tinkerpatch.gradle' //引用tinkerpatch.gradle文件
图片描述
图片描述

修改tinkerpatch.gradle
图片描述

四、在Application 中初始化TinkerPatch

 /**
     * 我们需要确保至少对主进程跟patch进程初始化 TinkerPatch
     */
    private void initTinkerPatch() {        // 我们可以从这里获得Tinker加载过程的信息
        if (BuildConfig.TINKER_ENABLE) {
            tinkerApplicationLike = TinkerPatchApplicationLike.getTinkerPatchApplicationLike();            // 初始化TinkerPatch SDK
            TinkerPatch.init(
                    tinkerApplicationLike//                new TinkerPatch.Builder(tinkerApplicationLike)//                    .requestLoader(new OkHttp3Loader())//                    .build()
            )
                    .reflectPatchLibrary()
                    .setPatchRollbackOnScreenOff(true)
                    .setPatchRestartOnSrceenOff(true)
                    .setFetchPatchIntervalByHours(3)
            ;            // 获取当前的补丁版本
            Log.d(TAG, "Current patch version is " + TinkerPatch.with().getPatchVersion());            // fetchPatchUpdateAndPollWithInterval 与 fetchPatchUpdate(false)
            // 不同的是,会通过handler的方式去轮询
            TinkerPatch.with().fetchPatchUpdateAndPollWithInterval();
        }
    }

五、打包全量包(就是需要发布的有bug 的apk)和补丁
图片描述

图片描述

六、进入官网发布 补丁,秩序将path-signed-7zip.apk发布即可,详细内容请参考官方文档
图片描述
图片描述

提示 Tinker 并不支持即时更新,发布补丁后需重启应用才能实现更新。

原文链接:http://www.apkbus.com/blog-224187-77071.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消