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

如何为Expo的app.json添加多个scheme?EAS更新报错求助

Expo项目Facebook认证与EAS Update的Scheme冲突解决

问题说明

我给Expo项目集成了Facebook认证,按照要求在app.json里把scheme设成数组,包含自定义scheme和带fb前缀的应用ID:

{
  "expo": {
    "scheme": ["yourscheme", "fb1234567890"]
  }
}

这套配置下Facebook认证能正常运行,但用EAS Update推送更新时直接报错:

✖ Failed to publish updates
Manifest Validation Error:
scheme:should be string
This is likely a problem with your app.json, or app.config.js

VSCode也提示scheme属性应为字符串类型。要是只保留fb1234567890作为scheme值,EAS Update能正常执行,但我不想丢失自定义的首选scheme。

解决方法

把app.json里的scheme(单数)改成schemes(复数),用数组配置多个URL scheme:

{
  "expo": {
    "schemes": ["yourscheme", "fb1234567890"]
  }
}

原理

Expo的配置规则里,scheme字段仅支持单个字符串值,而schemes(复数)字段才是专门用来配置多个URL scheme的数组类型。这样修改后,既满足Facebook认证的要求、保留了自定义首选scheme,也能通过EAS Update的Manifest校验,不会再触发类型错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 21:45:02