Expo SDK45迁移后Android EAS预览构建启动崩溃求助
Expo SDK 45 EAS Build Android预览包闪屏页崩溃排查方案
我近期从Expo SDK 43迁移至SDK 45,同时从传统构建升级为EAS CLI,采用托管工作流。执行eas build --profile preview --platform android命令能成功构建Android包,但应用启动时在闪屏页直接崩溃,且无堆栈跟踪信息;使用开发客户端或Expo GO测试时完全正常,无任何报错或警告。已尝试自定义入口点等方案,仍未解决问题,附上相关配置文件如下:
配置文件
package.json
// 请粘贴你的package.json内容
app.json
// 请粘贴你的app.json内容
eas.json
// 请粘贴你的eas.json内容
排查步骤
- 检查闪屏资源配置
确认app.json中splash字段的图片路径、尺寸是否符合Android要求,尤其是适配不同分辨率的drawable资源是否存在;尝试修改resizeMode为contain或cover基础模式,排查资源加载问题。 - 抓取系统崩溃日志
连接设备后执行adb logcat *:E命令,启动应用时抓取系统级错误日志,通常能找到Expo未输出的底层崩溃信息;也可通过Android Studio的Logcat筛选应用包名,获取精准堆栈。 - 验证依赖兼容性
对比SDK 43到45的依赖变更,确认package.json中第三方库(尤其是原生模块)是否适配SDK 45;执行npx expo doctor自动检测依赖冲突,按提示修复。 - 检查EAS构建配置
核对eas.json中preview profile的android配置,排查自定义gradle脚本或环境变量是否有误;尝试用默认profile构建,排除自定义配置导致的问题。 - 简化入口初始化逻辑
临时简化入口文件(如index.js/App.js)的初始化代码,仅保留基础Expo启动逻辑,逐步恢复代码定位崩溃点;排查是否存在依赖开发环境变量但生产未配置的情况。 - 清理构建缓存
执行eas build --clear-cache --profile preview --platform android清除远程构建缓存后重新构建,避免旧缓存引发的兼容性问题。
内容的提问来源于stack exchange,提问作者Aliasgar Patel
相关产品推荐
相关产品推荐

