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

Windows系统Expo创建的React Native项目info.plist位置及模板咨询

解决Expo部署iPhone时的ATS配置问题

我来帮你理清这个问题——毕竟用Expo做iOS部署时,ATS配置是个常见的卡点:

1. 先划重点:Expo托管项目不需要手动找原生Info.plist

如果你是用create-react-native-app创建的Expo托管式项目(也就是没执行过eject的项目),本地根本看不到原生的Info.plist文件——因为Expo会帮你托管和生成原生代码。这种情况下,你只需要通过项目根目录的**app.json或app.config.js**来配置ATS例外,Expo会自动把配置注入到构建后的Info.plist里。

举个具体的配置例子,允许特定域名的非HTTPS请求:

{
  "expo": {
    "ios": {
      "infoPlist": {
        "NSAppTransportSecurity": {
          "NSExceptionDomains": {
            "your-target-domain.com": {
              "NSIncludesSubdomains": true,
              "NSExceptionAllowsInsecureHTTPLoads": true
            }
          }
        }
      }
    }
  }
}

2. 只有eject后的裸项目才能手动编辑Info.plist

如果你因为特殊需求必须直接修改Info.plist,那你需要先把项目转为裸工作流:

  • 执行命令:expo eject(注意:这步不可逆,会生成完整的iOS和Android原生目录)
  • 之后,Info.plist会放在项目根目录的ios/[你的项目名称]/Info.plist路径下
  • eject后会生成默认的Info.plist模板,包含基础的ATS配置、权限声明等必要内容,你可以在此基础上修改。

小提醒

尽量避免用NSAllowsArbitraryLoads全局关闭ATS限制,App Store审核时很容易被拒,最好只给需要的域名加例外。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:30:57