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

如何优化EAS EXPO构建的Android空项目App Bundle包体积?

减小EAS构建的Android App Bundle体积的方法

1. 启用ProGuard/R8代码压缩与混淆

Expo默认未开启全量代码优化,在app.json或app.config.js中添加以下配置,移除未使用代码并混淆类名:

{
  "expo": {
    "android": {
      "enableProguardInReleaseBuilds": true,
      "useProguard": true,
      "enableDexingInReleaseBuilds": true
    }
  }
}

2. 清理未使用的Expo模块

空Expo项目默认集成了大量通用模块(如相机、定位等),即使未实际使用也会被打包。可以:

  • 运行expo install --fix自动清理未用到的依赖
  • 手动在package.json中删除不需要的expo-*包(如expo-camera、expo-location)后重新构建

3. 优化资源打包策略

在app.json中开启资源压缩与按需加载,减少冗余资源:

{
  "expo": {
    "android": {
      "compressResources": true,
      "resourceQualifiers": ["ldpi", "mdpi", "hdpi", "xhdpi", "xxhdpi", "xxxhdpi"]
    }
  }
}

该配置会自动压缩资源文件,并仅打包对应设备分辨率的资源。

4. 运行Expo资源优化工具

执行npx expo optimize,工具会自动压缩项目中的图片、字体等资源,移除未被引用的资源文件。

5. 过滤不必要的CPU架构

如果无需支持全量CPU架构,可在app.json中指定仅打包常用ABI:

{
  "expo": {
    "android": {
      "abis": ["armeabi-v7a", "arm64-v8a"]
    }
  }
}

默认打包的x86等架构可按需移除,进一步缩减体积。

6. 排查第三方依赖冗余

部分npm包会自带冗余原生库,可通过expo doctor检查项目依赖,替换为轻量替代方案或移除不必要的第三方包。


内容的提问来源于stack exchange,提问作者Bruno Verçosa

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 03:45:42