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

Expo开发构建iOS应用扫码提示No bundle URL present问题求助

解决Expo EAS Development构建iOS后出现"No bundle URL present"的问题

问题原因

EAS的Development构建默认不会将JS Bundle打包进App,也未配置自动连接本地打包服务器的参数,导致安装后无法获取bundle地址。而npx expo run:ios是本地直接构建并启动打包服务器,所以能正常运行。

解决方案

1. 配置EAS开发客户端,连接本地打包服务器

修改eas.json中development的iOS配置,添加developmentClient字段,让构建的App支持连接本地开发服务器:

{
  "cli": {
    "version": ">= 3.17.0"
  },
  "build": {
    "development": {
      "distribution": "internal",
      "android": {
        "gradleCommand": ":app:assembleDebug"
      },
      "ios": {
        "buildConfiguration": "Debug",
        "developmentClient": true // 新增配置
      },
      "env": {
        "BE_BASE_URL": "https://api.sotravel.me"
      }
    },
    "preview": {
      "distribution": "internal"
    },
    "production": {
      "env": {
        "BE_BASE_URL": "https://api.sotravel.me"
      }
    }
  },
  "submit": {
    "production": {}
  }
}

构建完成安装后,按以下步骤操作:

  • 本地项目根目录运行npx expo start --dev-client启动打包服务器
  • 打开安装好的App,选择连接到本地服务器(同一网络下会自动识别,也可手动输入电脑局域网IP)

2. 预打包JS Bundle,实现离线运行开发包

如果需要无需连接本地服务器就能打开App,可配置EAS构建时将bundle打包进App:
修改eas.json中development的iOS配置,添加jsBundle字段:

"ios": {
  "buildConfiguration": "Debug",
  "jsBundle": true // 新增配置
},

然后运行本地构建命令(需本地有Xcode环境):

eas build --profile development --platform ios --local

构建完成后安装App,即可直接打开无需连接服务器。

3. 检查项目基础配置

确保app.json或app.config.js中开启了开发客户端支持:

"expo": {
  "developmentClient": {
    "enabled": true
  },
  "ios": {
    "bundleIdentifier": "你的Bundle ID"
  }
}

内容的提问来源于stack exchange,提问作者Nathan Tew

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 02:12:06