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

使用Expo与React Navigation配置Universal Links时关联域自动禁用的问题排查求助

Expo与React Navigation配置Universal Links时关联域自动禁用的问题排查求助

我目前因为项目技术债的限制,必须同时使用React Navigation和Expo,暂时没法切换到Expo Router,但在配置Universal Links时快被逼疯了!我严格跟着Expo的官方教程和React Navigation的文档一步步操作,却始终卡在了同一个问题上。

先跟大家梳理下我已经完成的所有配置细节:

1. Expo项目app.json配置

我在app.json的iOS模块中已经正确配置了关联域,并且bundle ID和后续所有配置保持一致:

// ...
"ios": {
  "supportsTablet": true,
  "bundleIdentifier": "com.cjoshmartin.pokemon",
  "associatedDomains": [
    "applinks:pokemon-web-chi.vercel.app"
  ]
},
// ...

2. React Navigation Linking配置

在src/App.tsx的导航容器配置中,我启用了自动链接,并添加了所有需要的前缀,确保覆盖了App内Scheme和网站域名:

linking={{
  enabled: 'auto',
  prefixes: [
    prefix,
    'pokemon://',
    'http://pokemon-web-chi.vercel.app',
    'https://pokemon-web-chi.vercel.app',
    'https://pokemon-web-chi.vercel.app/pokemon/*',
    'http://pokemon-web-chi.vercel.app/pokemon/*',
  ],
  // 其他路由映射配置...
}}

3. 网站端apple-app-site-association配置

我在Next.js网站的.well-known目录下放置了符合Apple要求的关联配置文件,文件可以通过网站域名正常访问:

{
  "applinks": {
    "details": [
      {
        "appID": "HJXLN2SCZS.com.cjoshmartin.pokemon",
        "paths": ["/pokemon/*"]
      }
    ]
  }
}

核心问题

当我执行eas build --platform ios --profile production构建iOS生产包时,日志里明确输出:

✔ Synced capabilities: Disabled: Associated Domains

关联域功能被自动禁用了!而我按照相同的流程配置Expo Router的示例项目时,一切都能正常工作,换成React Navigation就出现了这个异常。

我已经反复核对了bundle ID、域名匹配、前缀配置等所有细节,确认没有错误,但就是找不到问题所在。有没有朋友遇到过类似的情况?到底是哪里的配置遗漏导致构建时关联域被自动关闭?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.07 12:13:06