You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter打包APK时运行R8检测到缺失类,求解决方案

解决Flutter打包APK时R8缺失类报错的方案

1. 应用自动生成的缺失类保留规则

报错提示里提到了自动生成的keep规则文件,找到build/outputs/mapping/release/missing_rules.txt,把文件里的所有规则复制到android/app/proguard-rules.pro中。

2. 完善Release构建类型的R8配置

修改android/app/build.gradle里的buildTypes块,明确启用R8混淆与资源压缩,并指定混淆规则文件:

buildTypes {
    release {
        signingConfig signingConfigs.release
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

3. 添加Flutter基础混淆规则

如果proguard-rules.pro里没有Flutter相关规则,添加以下内容避免核心类被误删:

# Flutter核心类保留规则
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugin.**  { *; }
-keep class io.flutter.util.**  { *; }
-keep class io.flutter.view.**  { *; }
-keep class io.flutter.**  { *; }
-keep class io.flutter.plugins.**  { *; }
-dontwarn io.flutter.**

4. 排查第三方插件的混淆需求

如果是第三方Flutter插件导致的缺失类,查看该插件的官方文档,把它要求的特定混淆规则添加到proguard-rules.pro中。

5. 清理缓存后重新构建

执行以下命令清理项目缓存,再重新打包Release版APK:

flutter clean
flutter build apk --release

内容的提问来源于stack exchange,提问作者nady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 20:38:10