关于Universal links的一点总结

Universal links的来龙去脉就不说了,这里简单总结几点我认为比较容易让人困惑的事项,希望能给遇到困难的小伙伴们提供一点帮助。


2021-3-16更新:
如果你嫌配置这些东西太麻烦,用ShareSDK吧。它会帮你把这些东西都配置好,然后你复制它给你的链接直接用就好了,省去你研究格式的时间,也不用让后台帮你更新这个文件了。我底下写的这些东西你也就可以不看了...


先贴下苹果官方文档:点这里

一、 关于apple-app-site-association在服务器上的路径
上面这个文档里,苹果建议放在域名下的".well-known"文件夹里,比如:

https://<your-domain>/.well-known/apple-app-site-association

但从百度上的结果来看,".well-known"这个路径弄起来还挺麻烦的。所以还是推荐直接放在域名根目录底下,就是这样:

https://<your-domain>/apple-app-site-association

二、这个apple-app-site-association里面的json怎么写
上面文档推荐的格式是:

// 格式1
{
  "applinks": {
      "details": [
           {
             "appIDs": [ "ABCDE12345.com.example.app", "ABCDE12345.com.example.app2" ],
             "components": [  // 相当于其他格式中的paths
               {
                  "/": "/buy/*",  // 具体的path
                  "comment": "Matches any URL whose path starts with /buy/"  // 注释
               },
               {
                  "/": "/help/website/*",
                  "exclude": true,  // 作用同其他格式具体path前面的那个"NOT"
                  "comment": "Matches any URL whose path starts with /help/website/ and instructs the system not to open it as a universal link"
               }
             ]
           }
       ]
   }
}

可是你在网上绝大多数的文章里看到的都是这样的格式:

// 格式2
{ 
 "applinks": {
     "apps": [],  // 空数组就好了
     "details": [ 
      {
          "appID": "ABCDE12345.com.example.app",
          "paths": [ "/universal_links_callback/*", "/qq_conn/666888666/*", "NOT /website/*" ]
      }
      ] 
    }
}

你可能还会看到第3种格式:

// 格式3,知乎就是这样的格式
{
    "applinks": {
        "apps": [],
        "details": {  // 和格式2相比,details变成了字典,原本显式的"appID"直接变成了key
            "ABCDE12345.com.example.app": {
                "paths": [
                    "/universal-links-callback/*",
                    "/qq_conn/666888666/*",
                    "NOT /website/*"
                ]
            }
        }
    }
}

看上去格式1比格式2、3更复杂点,但语义更清晰,可读性更高。"components"相当于其他格式中的"paths";"component"下的"exclude": true,相当于格式2、3中paths里具体path前的"NOT",意思是不把这个路径的链接当通用链接来处理。

按理这三种格式都是ok的。但是如果你用苹果最新推荐的“格式1”的话,当你在QQ互联中验证Universal link时会一直失败,会报一个大概意思是“在你的apple-app-site-association中找不到QQ相关的Universal link信息”的错误。微信是没问题的,因为微信不校验。

三、如果你用了友盟分享,还需要集成微信支付时的注意事项
第一个:pod友盟的精简版微信分享"ReducedWeChat",和最新的微信官方"WechatOpenSDK"

pod 'UMCShare/Social/ReducedWeChat'
pod 'WechatOpenSDK'

第二个:除了原本友盟的注册方法之外,你还需要再调用下微信sdk的注册方法。否则分享可以调起微信,但支付的时候调不起来。

// 原本友盟的注册方法
UMSocialGlobal.shareInstance()?.universalLinkDic = 
                                    [UMSocialPlatformType.wechatSession : universalLink_wx, 
                                    UMSocialPlatformType.QQ : universalLink_qq]
UMSocialManager.default().setPlaform(.wechatSession,
                                     appKey: WXAppId,
                                     appSecret: WXAppSecret,
                                     redirectURL: nil)
// 微信sdk的注册方法
WXApi.registerApp(WXAppId, universalLink: universalLink_wx)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,294评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,493评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,790评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,595评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,718评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,906评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,053评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,797评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,250评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,570评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,711评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,388评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,018评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,796评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,023评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,461评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,595评论 2 350