热更新的使用(腾讯的Bugly)

简介: 热更新解决方案,选择的是腾讯的bugly,同时附带着bug手机,很好用,反馈率很高,也比较准,目前对集成的项目来看还没有太大的问题。0.0多渠道打包速度太慢不知道算不算。

热更新解决方案,选择的是腾讯的bugly,同时附带着bug手机,很好用,反馈率很高,也比较准,目前对集成的项目来看还没有太大的问题。0.0多渠道打包速度太慢不知道算不算。

腾讯bugle理解:热更分为基准包+补丁包;基准包为线上版本在运行的apk包,补丁包为依赖于基准包而生成的补丁文件,需要上传到bugly更新列表中;补丁包上传到bugly更新列表成功的前提是基准包在补丁包上传之前在APP上联网运行过。。当然,较大程度的更新还是依赖于发APK包的形式,小的更新+解决比较着急致命的bug直接使用热更即可。

bugly热更新的局限性

1、不支持修改清单文件,不支持新增android端四大组件(页面、Service服务,广播、数据库)。后续版本应该也支持了

2、不建议在GP渠道热更新代码。

3、在Android N上对启动时间有轻微影响。

4、不支持部分三星android-21机型,加载补丁时会主动抛出异常。

不支持一些动画类型的资源文件的更新。

官方链接:腾讯bugly官方地址

下面是具体的集成步骤,官方文档介绍的比较详细,这里着重把需要注意的点写下来,少趟坑。

1.工程根目录下“build.gradle”文件中添加:

dependencies {    classpath "com.tencent.bugly:tinker-support:1.1.2"}

1、APP下的build.gradle中添加bugly SDK的依赖

dependencies {  

    compile "com.android.support:multidex:1.0.1" // 多dex配置    

    compile 'com.tencent.bugly:crashreport_upgrade:1.3.5'    // 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)    

    compile 'com.tencent.tinker:tinker-android-lib:1.9.6'    compile 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新版本号,也可以指定明确的版本号,例如2.2.0

    }

// 依赖插件脚本apply from: 'tinker-support.gradle'


1、APP创建tinker-support.gradle文件,文件中大体内容为

tinker-support.gradle以及注意点

            针对上述tinker-support.gradle文件中的三个重要点

            1、baseApkDir:打补丁包时依据的基准包地址,大基准包时不用定义。

            2、tinkerId:基础包+补丁包的版本号(打基础包时改为基础包版本号,打补丁包时改为补丁包版本号)

            3、enableProxyApplication:是否使用自己的Application,或者是集成sdk中的application。(文档中有详细说明)

             另外:支持加固模式和多渠道也在上图注释中有,说明一点的是,多渠道打包的时候,只需要在build.gradle中加入productFlavors即可

多渠道打包配置

实例化热更新

实例化热更新SDK

build.gradle中配置好打包信息后,使用Gradle自带的打包命令进行基础包、补丁包的打包

打包命令


多渠道打包的时候,基准包的生成会有单个文件:mapper文件(如果没有,说明build.gradle中的minifyEnabled没有开启混淆)、APK文件、TXT文件,需要进行联网运行的基础包就是该APK文件。补丁包选取patch下的7z.apk文件。上传到bugly后台即可。

补丁包
重启项目补丁下载的回调

下面附完整截图流程,接入Demo需要的联系我私发。

完整接入流程
相关文章
|
6月前
|
移动开发 JavaScript 前端开发
程序与技术分享:AppCan入门教程
程序与技术分享:AppCan入门教程
37 0
|
7月前
|
运维 监控 安全
应用研发平台EMAS常见问题之sophix ios flutter热更新如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
192 0
|
Web App开发 JSON 小程序
腾讯视频 微信小程序 视频下载方案
腾讯视频 微信小程序 视频下载方案
|
存储 Java Android开发
关于安卓bugly更新,bugly上传符号表实现
关于安卓bugly更新,bugly上传符号表实现
430 0
|
IDE 开发工具
华为快应用-在其他平台审核出现的白屏问题
华为快应用-在其他平台审核出现的白屏问题
153 0
|
安全 Android开发
|
Android开发
关于安卓集成Bugly热更新后,补丁包合成失败问题
安卓集成Bugly热更新后,补丁包合成失败问题
317 0
|
安全 Android开发 Windows
|
监控 开发者 iOS开发
iOS开发:腾讯bugly符号表文件上传
腾讯bugly确实是一个好东西,它实现了面向移动开发者提供专业的 Crash 监控、崩溃分析等质量跟踪服务。能帮助移动互联网开发者更及时地发现掌控异常,更全面的了解定位异常,更高效的修复解决异常
352 0
iOS开发:腾讯bugly符号表文件上传