秒杀 Flutter 打包 Android APK 包体积突增 ≈2 倍的问题

AGP:Android Gradle Plugin,com.android.tools.build:gradle

省流

android/app/build.gradle 增加对应内容:

对于 AGP 8 以上,增加 packaging

groovy 复制代码
android {
    packaging {
        dex {
            useLegacyPackaging true
        }
        jniLibs {
            useLegacyPackaging true
        }
    }
}

其他版本增加 packagingOptions

groovy 复制代码
android {
    packagingOptions {
        dex {
            useLegacyPackaging true
        }
        jniLibs {
            useLegacyPackaging true
        }
    }
}

原因

目测是为了推进 AppBundle 的使用,所以

自 Android API 23+ 开始,jniLibs 默认不开启压缩: developer.android.com/reference/t...

自 Android API 28+ 开始,dex 默认不开启压缩: developer.android.com/reference/t...

而就算在你没有更改 min/compile/target 的情况下,升级到 8.1 以上的 AGP 时也会默认关闭这些选项。 当你去搜索答案的时候,大部分都是告诉你过期的,调整后没有变化。

秒杀,下次见。

相关推荐
CYY9535 分钟前
Android 打印 SO 库的异常日志
android
找藉口是失败者的习惯2 小时前
深入理解 Android 无障碍服务
android
summerkissyou19872 小时前
Android-SurfaceView-打开车机SurfaceFlinger和HWC的日志
android
Fate_I_C2 小时前
Android函数式编程代码规范文档
android·代码规范
安卓蓝牙Vincent2 小时前
Android BLE SDK 设计手册(一):一次参数改动,让我重新设计了整套架构
android·架构
angerdream2 小时前
Android手把手编写儿童手机远程监控App之广播开机自启动
android·android studio
su_ym81102 小时前
Android SELinux
android·selinux
阿巴斯甜3 小时前
Android中项目架构:
android
程序员陆业聪4 小时前
线上监控与防劣化:让启动优化成果不再回退 | Android启动优化系列(五·完结)
android
程序员陆业聪4 小时前
首帧渲染优化:从白屏到内容可见的最后一公里
android