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

React Native Expo应用在TestFlight及Android内部测试启动崩溃求助

解决方案

Android端:修复requireNativeComponent: 'RNSVGPath' was not found崩溃

  • 用expo install react-native-svg替代npm install安装依赖,确保版本与当前Expo SDK完全兼容(不同SDK对应固定的react-native-svg版本,比如SDK 49对应13.14.0,SDK 50对应14.1.0),避免手动安装不匹配版本。
  • 检查app.json/app.config.js的插件配置,确认react-native-svg已加入插件列表:
    {
      "expo": {
        "plugins": [
          "expo-splash-screen",
          "react-native-svg"
        ]
      }
    }
    
  • 执行eas build --clear-cache清理构建缓存后重新打包,排除旧缓存导致的依赖集成失败。
  • 若使用react-native-svg-transformer等SVG工具,检查metro.config.js配置是否与Expo默认metro设置兼容,不要随意覆盖Expo的原生metro配置。

iOS端:修复EXUpdates相关启动崩溃

  • 核对app.json中updates字段的配置:确保url指向正确的Expo Updates服务器(格式为https://u.expo.dev/[你的项目ID]),同时确认enabled、fallbackToCacheTimeout等参数设置合理:
    {
      "expo": {
        "updates": {
          "url": "https://u.expo.dev/xxx",
          "enabled": true,
          "fallbackToCacheTimeout": 0
        }
      }
    }
    
  • 检查iOS构建的签名配置:确认EAS Build使用的证书和Provisioning Profile包含必要权限,若启用自动更新,需确保网络权限配置正常(无需额外配置HTTPS服务)。
  • 确保EAS Build时正确注入环境变量:如果项目使用EXPO_PUBLIC_前缀的变量,构建时通过eas build --profile [你的构建配置] --env-file .env.production指定环境文件,避免变量缺失导致Updates初始化失败。
  • 临时禁用Updates测试:在app.json中设置"updates": {"enabled": false},重新构建TestFlight版本,若不再崩溃则锁定问题在Updates配置,再逐步排查细节。

通用排查动作

  • 执行npx expo prebuild --clean清理生成的原生文件后重新构建(Managed workflow也可尝试)。
  • 执行npm ls react-native-svg检查是否存在多版本依赖冲突,如有则用npm dedupe去重。
  • 查看Expo Dashboard中的构建日志,搜索RNSVGPath或EXUpdates相关条目,排查构建过程中未被注意的警告或错误。

内容的提问来源于stack exchange,提问作者Raji Rajah

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 02:51:12