@[TOC] Bugly Android热更新问题解决[Android11,minSdkVersion=23]
最近在使用Bugly Android热更新的时候遇到一些问题,在这里分享一些解决方案。
Bugly Android热更新使用指南首先关于基本的集成步骤可以参考官方文档。下面主要讲一下需要改动注意的地方。
注意事项- Project下面的build.gradle需要一下改动:
// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { google() mavenCentral() jcenter() //必须添加jcenter()才能下载插件 } dependencies { // classpath "com.android.tools.build:gradle:7.0.4" //gradle版本不能高于4.0,tinker还没做高版本的适配,我个人用的是3.6.1 classpath "com.android.tools.build:gradle:3.6.1" classpath "com.tencent.bugly:tinker-support:1.2.3" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } task clean(type: Delete) { delete rootProject.buildDir }
- 在app Module下的build.gradle需要注意:
minSdkVersion 23 //最低兼容的SDK版本不能超过24,不然的话热更新的包会编译失败
release { //在这里注释minifyEnabled false ,不然热更新会失败 //minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release }
- tinker-support.gradle目录下添加一下配置
tinkerPatch { //新增start allowLoaderInAnyDex = true removeLoaderForAllDex = true //新增end ignoreWarning = false useSign = true dex { dexMode = "jar" pattern = ["classes*.dex"] loader = [] } lib { pattern = ["lib/*/*.so"] } res { pattern = ["res/*", "r/*", "assets/*", "resources.arsc", "AndroidManifest.xml"] ignoreChange = [] largeModSize = 100 } packageConfig { } sevenZip { zipArtifact = "com.tencent.mm:SevenZip:1.1.10" } buildConfig { keepDexApply = false } }
- 如果用到第三方库的话需要注意最低兼容版本同样不能高于24
以上修改过之后,基本就可以正常使用热更新了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)