Flutter pub upgrade后APK体积翻倍,如何恢复至原大小?
解决Flutter pub upgrade后APK体积翻倍的问题
对比依赖版本差异
执行git diff pubspec.lock(若使用Git),或对比升级前后备份的pubspec.lock文件,找出新增、版本大幅提升的依赖包——这类包通常是体积暴涨的元凶。针对性降级问题依赖
在pubspec.yaml中指定问题依赖的旧版本(升级前的兼容版本),例如:dependencies: problematic_package: ^1.2.3 # 替换为之前的稳定版本号执行
flutter pub get完成降级。重新分析体积定位问题
再次执行flutter build apk --analyze-size --target-platform android-arm64,重点查看以下模块的体积变化:- 原生库(lib目录):是否有依赖引入了大体积的arm64库文件
- Assets资源:是否新增了大量图片、字体或其他资源文件
- Dart代码:是否因依赖升级引入了大量未使用的代码
开启编译优化
在android/app/build.gradle的release构建类型中确保启用资源压缩与代码混淆:buildTypes { release { shrinkResources true minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } }同时使用Dart代码混淆进一步压缩体积:
flutter build apk --obfuscate --split-debug-info=./debug-info --target-platform android-arm64清理冗余资源
若分析发现assets体积异常,检查是否有依赖自动添加了冗余资源(如多余语言包、未使用的图标),可通过在pubspec.yaml中配置flutter/assets的exclude规则剔除无用资源。
内容的提问来源于stack exchange,提问作者AKSHAY
相关产品推荐
相关产品推荐

