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

如何在Xamarin.Android中移除最终AAB文件内的未使用语言?

针对AAB移除无用语言资源的操作说明

可行方案说明

你完全可以对AAB执行类似APK的手动裁剪操作,也可以用官方原生的构建配置实现更稳定的过滤效果,两种方案如下:

方案1:构建阶段自动过滤(推荐)

这是最稳定的方案,不需要手动修改打包后的文件,不会出现签名或结构校验异常:

  • 在App模块的构建配置文件中添加resConfigs配置,指定你需要保留的语言即可,构建AAB时工具会自动丢弃所有未被指定的语言资源
  • Gradle Groovy配置示例:
android {
    defaultConfig {
        // 按需填写要保留的语言缩写,比如仅保留中英文就写"zh","en"
        resConfigs "zh", "en"
    }
}
  • Gradle Kotlin DSL配置示例:
android {
    defaultConfig {
        resConfigs("zh", "en")
    }
}

方案2:手动裁剪已生成的AAB文件

如果你需要修改已经打包完成的AAB,按以下步骤操作即可:

  1. AAB本质是Zip格式压缩包,直接用解压工具解压到本地文件夹
  2. 本地化字符串资源存放在各个功能模块的res/目录下,命名为values-{语言标识}的文件夹就是对应语言的资源目录,直接删除你不需要的语言对应文件夹即可
  3. 裁剪完成后将所有文件重新打包为Zip格式,再把文件后缀修改为.aab
  4. 最后使用jarsigner工具或者Android Studio的签名功能对修改后的AAB重新签名,就可以正常上传Google Play

注意事项

  • 手动修改AAB时不要改动根目录下的BundleConfig.pb等核心配置文件,避免结构校验失败
  • 重新打包时要保证目录结构和原AAB完全一致,不要额外多套一层根目录
  • 优先选择构建阶段配置的方案,出错概率远低于手动修改

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 13:15:07