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

Expo SDK 52打包Android APK后闪屏后白屏问题求助

Expo 52.0.25 EAS打包Android APK后闪屏白屏排查方案
  • 检查EAS构建调试日志

    • 修改eas.json构建配置,生成调试版APK:
      {
        "build": {
          "development": {
            "developmentClient": true,
            "distribution": "internal",
            "android": {
              "buildType": "debug"
            }
          }
        }
      }
      
    • 安装调试版APK后,执行adb logcat -s Expo过滤Expo相关日志,排查是否有隐藏的加载错误(之前未过滤可能遗漏关键信息)。
  • 验证资产打包配置

    • 确认app.json中expo.assets字段已正确声明所有本地资产路径,EAS打包需显式配置才能将资产纳入APK:
      "expo": {
        "assets": ["./assets/fonts/", "./assets/images/"]
      }
      
    • 临时移除所有自定义资产,用纯空白组件测试打包,排查是否因资产加载阻塞导致白屏。
  • 排查组件渲染阻塞

    • 检查根组件(如App.js)是否存在未处理的异步操作:避免在组件函数体直接调用异步函数,改用useEffect并添加加载状态:
      export default function App() {
        const [loading, setLoading] = useState(true);
      
        useEffect(() => {
          // 异步操作示例
          setTimeout(() => setLoading(false), 1000);
        }, []);
      
        if (loading) return <ActivityIndicator size="large" />;
        return <View><Text>正常内容</Text></View>;
      }
      
  • 清理依赖并重新构建

    • 删除node_modules、package-lock.json/yarn.lock,执行npm install或yarn install重新安装依赖。
    • 运行expo doctor再次确认环境无问题后,重新执行EAS打包。
  • 检查设备权限

    • 确认测试手机已开启应用的网络权限(若项目含网络请求),部分设备会限制未知来源应用的网络访问,手动开启后重试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 22:33:15