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

EAS CLI无法为Expo应用执行更新,寻求技术排查方案

问题排查与修复方案

核心变更说明

expo publish已被EAS Update完全替代,官方已废弃该命令,这是导致你无法继续使用它的直接原因,现在必须使用eas update推送应用更新。

配置文件修复步骤

1. 清理eas.json中的冲突配置

你的eas.json同时存在releaseChannel和channel字段,前者是旧版Expo Updates的概念,后者是EAS Update的新特性,两者共存会引发逻辑冲突。需要移除所有releaseChannel字段,仅保留channel:

修改后的eas.json:

{
  "cli": {
    "version": ">= 2.7.0",
    "promptToConfigurePushNotifications": false
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "store",
      "channel": "default"
    },
    "preview": {
      "ios": {
        "autoIncrement": "buildNumber"
      },
      "android": {
        "buildType": "app-bundle"
      },
      "channel": "default",
      "distribution": "store"
    },
    "production": {
      "autoIncrement": true,
      "channel": "default"
    }
  },
  "submit": {
    "production": {
      "android": {
        "track": "production"
      },
      "ios": {
        "companyName": "턴백",
        "appName": "턴백",
        "language": "kr"
      }
    }
  }
}

2. 补全app.json中的updates.url

你的updates.url字段为占位符...,必须替换为Expo控制台中对应项目的EAS更新服务器地址:

  • 登录Expo控制台进入你的项目
  • 切换到「Updates」标签页
  • 复制页面中的「Update URL」,替换app.json里的"url": "..."

3. 确认runtimeVersion一致性

你使用的runtimeVersion策略为sdkVersion,只要构建应用包和推送更新时使用的Expo SDK版本一致(当前均为45.0.8),就不会出现版本不兼容问题,无需额外修改。

正确的更新命令

执行以下命令将更新推送到default渠道:

eas update --channel default

额外检查项

  • 确保已通过eas login登录正确的Expo账号
  • 确认本地项目的app.json中extra.eas.projectId与Expo控制台的项目ID一致
  • 若在CI/CD环境执行更新,需配置正确的EAS_TOKEN环境变量

内容的提问来源于stack exchange,提问作者Youngsung Choi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 11:40:38