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

如何在Safari中打开链接时重定向至iOS应用?

排查iOS Universal Links跳转失败的问题

看起来你已经完成了Universal Links的基础配置,但跳转没生效,我帮你梳理几个容易踩坑的排查点:

  • 先确认apple-app-site-association文件的可访问性与正确性

    • 用浏览器或终端命令curl https://example.com/.well-known/apple-app-site-association访问,确保能直接获取到文件,返回状态码是200,绝对不能有重定向(比如跳转到www子域名或HTTP地址)。
    • 核对文件内容:确保TEAM_ID是你在Apple开发者后台的10位团队ID(不是团队名称),bundle_identifier和Xcode里应用的Bundle ID完全一致,JSON格式要严格有效,不能有多余的空格或语法错误。你给出的结构是正确的,但要替换成实际的ID值。
  • 检查Xcode里的配置细节

    • 确认Associated Domains能力已启用:在项目的Signing & Capabilities标签下,这个能力是打开状态,且添加的条目是applinks:example.com——不要加https://、路径或其他后缀,就是纯域名。
    • 测试用的应用必须是签名有效的包:模拟器对Universal Links支持有限,建议用真机测试,且安装的是用开发者签名/Ad Hoc签名的应用,Bundle ID要和配置文件里的完全匹配。
    • 重启应用和设备:iOS会缓存关联域名的数据,有时候重启能刷新缓存,解决旧配置残留的问题。
  • 注意测试方式的正确性

    • 别直接在Safari地址栏输入域名!Universal Links的触发条件是点击链接——比如在短信、邮件、备忘录里点击https://example.com的链接,直接输入地址栏默认会打开网页,不会触发跳转。
    • 第一次点击可能会在Safari打开,下拉页面顶部会出现「打开应用」的横幅;如果没出现,可能是缓存或配置问题,可以多等一会儿,或者用Apple的CDN验证工具:在终端运行curl -v https://app-site-association.cdn-apple.com/a/v1/example.com,看看返回的内容是否和你上传的一致,如果不一致,说明Apple还没抓取到你的配置,最多可能需要24小时同步,但一般几小时内就会更新。
  • 其他潜在问题

    • 服务器必须用可信的HTTPS证书:不能是自签名证书,必须是权威CA颁发的,否则Apple无法抓取你的配置文件。
    • 如果域名有跳转(比如www.example.com跳转到example.com),要在Associated Domains里添加两个条目:applinks:example.com和applinks:www.example.com,同时确保两个域名的.well-known目录下都有正确的配置文件。
    • 确认应用的AppDelegate或SceneDelegate里实现了application(_:continue:restorationHandler:)方法(如果用SceneDelegate的话是scene(_:continue:)),虽然不实现也能打开应用,但如果有自定义跳转逻辑,这个方法是处理链接的入口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:19:05