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

使用EAS Build构建后应用闪屏后白屏,原Expo Build正常求解决

EAS Build构建应用闪屏后白屏的额外排查方案
  • 核对原生依赖兼容性:EAS Build的构建逻辑更贴近原生,部分第三方库在Expo Build托管环境下能正常运行,但在EAS的预构建/裸机环境可能存在版本冲突。直接检查package.json里react-native、expo核心包的版本是否匹配当前EAS要求,老版本的expo-*包大概率需要升级到适配当前SDK的版本。
  • 验证预构建配置文件:如果使用expo prebuild,务必检查android/app/src/main/AndroidManifest.xml和ios/[项目名称]/Info.plist的配置项,比如Android端闪屏的android:windowBackground是否正确指向资源文件,iOS的LaunchScreen.storyboard有没有被预构建流程篡改。同时确认app.json中expo.splash的resizeMode设置(比如contain或cover),避免因闪屏资源加载失败触发白屏。
  • 查看原生端错误日志:别只盯着JS层日志,直接用Android Studio或Xcode查看原生报错。Android可以执行adb logcat *:E过滤错误日志,iOS在Xcode控制台找红色报错信息——很多时候是原生模块初始化失败(比如权限配置缺失、资源路径错误),这类问题在Expo Build托管环境会被自动处理,但EAS需要手动配置。
  • 检查环境变量配置:EAS Build的环境变量注入逻辑和Expo Build不同,如果你代码里用到process.env变量,要确认eas.json的构建配置中env字段已正确配置,或者改用expo-constants的Constants.expoConfig.extra传递变量,避免因变量未定义导致JS逻辑崩溃。
  • 清理构建缓存:执行eas build --clear-cache彻底清空EAS的构建缓存,旧缓存很可能导致依赖或配置未更新,尤其是你近期升级过SDK或依赖包的情况。
  • 测试最小化复现项目:把当前项目代码逐步精简,只保留闪屏和基础页面,用EAS Build构建测试。如果能正常显示,再逐步加回其他依赖和业务代码,定位到触发白屏的具体模块或逻辑。
  • 校验JS bundle完整性:手动生成JS bundle(执行expo export --platform android或expo export --platform ios),检查生成的index.jsbundle是否完整,有没有语法错误或缺失的模块引用——EAS打包时偶尔会出现bundle不完整的情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 17:11:07