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

Expo开发iOS应用TestFlight环境Universal Link无法生效问题求助

1. 修复AASA文件配置错误

  • 首先修正JSON语法错误:你提供的AASA中applinks对象闭合的}后缺少逗号,直接拼接activitycontinuation字段会导致解析失败,修正后的精简兼容配置如下:
{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "<TeamID>.<BundleID>",
        "paths": [
          "/SquadSingle/*"
        ]
      }
    ]
  },
  "activitycontinuation": {
    "apps": [
      "<TeamID>.<BundleID>"
    ]
  }
}
  • 移除冗余的components匹配规则,保留兼容性更好的paths规则即可,iOS 14以下系统无法识别components字段,上述paths配置可以覆盖所有前缀匹配的路径,包括你需要的/SquadSingle?id=xxx场景。
  • 确认AASA文件的部署规则:
    • 访问路径https://mysite.com/.well-known/apple-app-site-association不能有任何301/302重定向,必须直接返回200状态码
    • 响应头Content-Type必须设置为application/json,不能添加签名、加密或者多余的安全限制头
    • 如果用到www.mysite.com子域,需要在www.mysite.com的同路径也部署相同的AASA文件

2. 修复app.json配置错误

  • 移除associatedDomains配置里的多余空格,正确格式为applinks:你的域名,如果需要同时匹配主域和www子域,需要两条都配置:
"ios": {
  ...
  "associatedDomains": [
    "applinks:mysite.com",
    "applinks:www.mysite.com"
  ],
  ...
}

3. 校验权限与签名配置

  • 确认苹果开发者后台开启Associated Domains权限后,重新生成了应用的Provisioning Profile(描述文件),Expo打包时使用了更新后的描述文件,可解压IPA查看embedded.mobileprovision文件,确认存在com.apple.developer.associated-domains字段。
  • 确认AASA中填写的<TeamID>(苹果开发者账号10位字符标识)和<BundleID>与你打包使用的配置完全一致,大小写严格匹配。
  • 测试前先卸载设备上所有旧版本的应用,重启设备后再安装TestFlight测试包,避免系统缓存旧的AASA文件和权限配置。
  • 不要直接在Safari地址栏输入链接回车测试,该场景系统默认不会唤起应用,可将链接放在备忘录、iMessage中点击,或者放在网页的a标签中点击测试。
  • 如需定位具体报错,可将设备连接Xcode,在控制台过滤swcd进程日志,查看AASA拉取、匹配的具体错误信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 20:48:02