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

如何减小Expo构建的安卓APK体积,能否压缩至10MB以内?

Expo 安卓安装包体积压缩方案

7~8个页面的轻量Expo应用默认构建包体积过大,核心原因是旧版构建工具的冗余打包逻辑,按以下步骤操作可将安装包体积压缩至10MB以内:

1. 替换旧构建工具为EAS Build

旧版expo build:android命令默认打包全量Expo SDK依赖、全CPU架构二进制文件,即便你没有用到对应能力也会被打包进安装包。改用EAS Build后会自动执行依赖树裁剪,仅打包项目实际用到的SDK模块,仅这一步就能把初始包体积砍掉50%以上。

2. 拆分CPU架构构建

在EAS构建配置中开启ABI拆分,不需要同时兼容所有CPU架构:

  • 面向国内市场仅保留armeabi-v7a、arm64-v8a两个架构,覆盖99%以上安卓设备
  • 单个架构的APK安装包体积会比全架构包缩小60%以上

3. 静态资源压缩优化

  • 所有图片资源替换为WebP格式,同等清晰度下WebP比PNG/JPG体积小60%以上
  • 移除未使用的字体、音频、图标等静态资源,如果用到图标库仅引入实际使用的单个图标,不要引入全量图标包
  • 不要在项目中存放冗余分辨率的资源,按需适配即可

4. 开启代码与资源混淆

  • 在app.json的安卓配置中添加"enableProguardInReleaseBuilds": true,开启ProGuard混淆,压缩JS Bundle与原生代码体积,同时移除无用类与方法
  • 在安卓Gradle配置中开启shrinkResources true,自动删除未被引用的原生资源文件

5. 裁剪依赖项

  • 排查package.json,移除所有未实际使用的Expo SDK模块与第三方依赖,比如未用到定位就删除expo-location、未用到推送就删除expo-notifications
  • 优先选择轻量第三方库,比如日期处理用轻量的date-fns替代全量moment库

如果需要更极致的裁剪,可以执行expo prebuild弹出原生项目,手动移除Expo默认预装的无关原生模块,可进一步缩小包体积。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 16:36:04