配置Associated Domains时,需要注意哪些细节?

好的,在配置 Associated Domains 时,有几个关键细节需要特别注意,这些细节直接影响 Universal Link 能否正常工作。


1. ** entitlements 文件中的域名格式 **

  • 必须包含 applinks: 前缀

    plaintext

    复制代码
    applinks:www.example.com
  • 不要加 https:// 或路径

  • 子域名需要单独配置 ,比如 applinks:blog.example.com


2. Team ID 和 Bundle ID 必须正确

  • apple-app-site-association 文件中的 appID 格式为:

    plaintext

    复制代码
    <Team ID>.<Bundle Identifier>
  • Team ID 在 Apple Developer 网站 查看

  • Bundle ID 在 Xcode 项目的 "Signing & Capabilities" 中确认


3. 服务器上的 apple-app-site-association 文件

  • 必须放在根目录或 .well-known 目录

    plaintext

    复制代码
    https://www.example.com/apple-app-site-association
    https://www.example.com/.well-known/apple-app-site-association
  • 文件不能有后缀 (不是 .json

  • Content-Type 必须是 application/json

  • 必须支持 HTTPS,且证书有效(不能是自签名证书)

  • 不能有重定向(比如 HTTP 跳转到 HTTPS 会导致验证失败)


4. paths 配置规则

  • 顺序重要:Apple 会按数组顺序匹配,找到第一个匹配项就停止

  • 通配符 * 匹配任意字符(包括子路径)

  • NOT 关键字 必须放在数组第一个位置,用于排除路径

    json

    复制代码
    "paths": ["NOT /admin/*", "/app/*"]
  • 精确匹配 :如果路径结尾不加 *,则只匹配该路径本身


5. Xcode 项目设置

  • Signing & Capabilities 中添加 Associated Domains
  • 确保 entitlements 文件被正确签名
  • 测试时使用 Ad Hoc 或 Development 证书(不能用 Enterprise 证书测试)

6. 测试和验证

  • 使用 Apple 的 App Search API Validation Tool https://search.developer.apple.com/appsearch-validation-tool/

  • 在设备上测试(模拟器可能不支持某些功能)

  • 清除之前的缓存: bash

    运行

    复制代码
    defaults delete com.apple.coreservices.useractivityd
  • 检查是否能通过链接唤醒应用,并正确跳转到指定页面


7. 常见问题排查

  • 如果链接打开了网页而不是应用,可能是:
    • apple-app-site-association 文件配置错误
    • 域名或路径不匹配
    • 证书或 HTTPS 配置问题
  • 如果应用被唤醒但没有正确处理链接,检查:
    • application:continueUserActivity:restorationHandler: 方法实现
    • userActivity.webpageURL 是否正确解析
相关推荐
天真小巫13 小时前
六年之约-2026.5.21
职场和发展
2301_8008951015 小时前
第九届蓝桥杯国赛b组--备战国赛版h
蓝桥杯
酉鬼女又兒16 小时前
零基础入门计算机组成原理:控制器章节全考点汇总 | 寄存器 + 控制存储器 + 微指令
考研·职场和发展·计算机外设
凌波粒1 天前
LeetCode--404.左叶子之和(二叉树)
算法·leetcode·职场和发展
我爱cope1 天前
【力扣hot100:76. 最小覆盖子串】
算法·leetcode·职场和发展
吃着火锅x唱着歌1 天前
LeetCode 962.最大宽度坡
算法·leetcode·职场和发展
凌波粒2 天前
LeetCode--257. 二叉树的所有路径(二叉树)
算法·leetcode·职场和发展
阿Y加油吧2 天前
两道数组算法题复盘:多数元素 & 颜色分类
算法·leetcode·职场和发展
凯瑟琳.奥古斯特2 天前
操作系统核心结构解析
java·开发语言·c++·python·职场和发展
June bug2 天前
【AI赋能测试笔记】5基于文档用例生成系统及skills
笔记·功能测试·职场和发展·测试用例·学习方法