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

为何expo publish会更新App Store上架的ejected app?相关疑问咨询

Expo Eject后App Store应用自动OTA更新的原因与禁用方法

为什么会自动更新?

这是正常行为,和本地网络无关。即便执行了expo eject,Expo默认仍保留**OTA(空中更新)**机制——通过expo publish推送的代码更新,能直接被已安装的应用拉取并生效,无需重新走App Store审核流程。从App Store下载的安装包内置了Expo的更新检查逻辑,启动时会自动检测并拉取最新发布的版本。

如何避免自动更新?

1. 彻底移除OTA功能

如果完全不需要空中更新能力,可以移除Expo更新相关模块:

  • 卸载依赖:执行 npm uninstall expo-updates 或 yarn remove expo-updates
  • 删除项目中所有调用expo-updates的代码(比如自动检查更新、手动更新触发的逻辑)
  • iOS端在Xcode中移除expo-updates的配置与依赖;Android端修改build.gradle和AndroidManifest.xml,删除对应更新相关配置

2. 关闭自动更新检查

若想保留OTA能力但禁用自动更新,可修改项目配置:

  • 在app.json或app.config.js的expo字段下添加:
"updates": {
  "enabled": false,
  "checkAutomatically": "NEVER"
}
  • 修改后需重新编译iOS/Android项目,提交新版本到App Store。旧版本应用因内置原有更新逻辑,仍会自动检查,需用户更新到新版本才会生效。

3. 临时屏蔽已发布的更新

若不想重新提交版本,可通过Expo后台的更新管理功能,将已发布的更新标记为废弃或回滚,这样旧版本应用就不会拉取到该更新。但这只是临时方案,彻底解决仍需修改配置重新上架。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 07:09:11