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

Flutter iOS端Universal Links无法正常工作问题求助

iOS端uni_links无法唤起App的问题求助

我用uni_links插件在Android和iOS端实现App链接功能,Android端运行正常,但iOS端无法唤起App打开对应URL。以下是已做的配置和尝试:

已完成的配置

  • 将apple-app-site-association.json文件同时放置在域名根目录和.well-known文件夹下
  • 在Runner.entitlements文件中添加域名applinks:myhost
  • 在info.plist中启用FlutterDeepLinkingEnabled

apple-app-site-association.json文件内容(当前版本)

HTTP/1.1 200 OK
Server: nginx/1.40.0
Content-Type: application/pkcs7-mime
Content-Length: 245

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "[TEAM_ID].[APP_BUNDLE_ID]",
        "paths": [ "*" ],
                "appIDs": ["[TEAM_ID].[APP_BUNDLE_ID]"],
                "components": [
                    {
                        "/": "*"
                    }
                ]
            }
        ]
    }
}

已尝试的方案

  • 按照Stack Overflow上的方案解决了branch.io验证时出现的'content-type'错误,但问题依旧
  • 尝试替换为app_links插件,仍无法解决iOS唤起问题

可能的修复建议

  1. 修正apple-app-site-association.json的格式

    • 移除文件中的HTTP响应头(HTTP/1.1 200 OK等内容),文件应仅保留纯JSON结构
    • 确保服务器返回该文件的Content-Type为application/json,而非application/pkcs7-mime(无签名的Universal Links配置不需要pkcs7-mime类型)
  2. 简化JSON结构(适配iOS 13+)
    混合旧版paths和新版components字段可能导致解析异常,建议统一使用components:

    {
        "applinks": {
            "apps": [],
            "details": [
                {
                    "appIDs": ["[TEAM_ID].[APP_BUNDLE_ID]"],
                    "components": [
                        { "/": "*" }
                    ]
                }
            ]
        }
    }
    
  3. 验证文件的可访问性

    • 用curl -v https://你的域名/.well-known/apple-app-site-association测试,确认返回200状态码、Content-Type正确,且内容是纯JSON
    • 确保无重定向,苹果服务器无法访问带重定向的关联文件
  4. iOS端配置细节检查

    • 在Xcode的Target -> Signing & Capabilities中,确认已添加Associated Domains,并包含applinks:myhost(和entitlements中的域名一致)
    • 确认info.plist中的FlutterDeepLinkingEnabled是布尔值YES,而非字符串类型
  5. 测试方式调整

    • 用真实设备测试,模拟器对Universal Links支持有限
    • 通过备忘录、短信等第三方应用点击链接,不要直接在Safari地址栏输入(Safari可能优先打开网页而非唤起App)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 11:10:12