无论Apple应用程序站点协会如何,通用链接始终会打开应用程序

时间:2019-10-07 15:40:14

标签: ios xamarin.ios

我们已按照here的说明实施了通用链接,以便用户可以确认其帐户。我们最近在网站上引入了一些新的控制器/页面,我们发现无论apple-app-site-association文件中的内容如何,​​所有链接都将打开应用程序。我已经检查了配置,找不到问题。

在添加新页面之前:

{
   "applinks": {
     "apps": [],
     "details": [
       {
         "appID": "XXXXXXXX.com.mybundle.identifier",
         "paths": ["*"]
       }
     ]
   }
}

添加新页面后:

{
   "applinks": {
     "apps": [],
     "details": [
       {
         "appID": "XXXXXXXX.com.mybundle.identifier",
         "paths": ["NOT /about/*", "NOT /home/*", "*"]
       }
     ]
   }
}

注意事项:

  • 我在路径中尝试了几种变体,包括“ NOT / about *”或“ NOT *”,所有链接仍会打开应用程序。
  • AASA Validator返回全部绿色。
  • 我在每次测试之间都进行了版本控制和卸载。

对我们接下来可以检查的内容有何想法?

1 个答案:

答案 0 :(得分:0)

document about allowing_apps_and_websites_to_link_to_your_content的最后一节中,它说:

  

在paths数组中的路径字符串中使用通配符来指定   网站的各个部分。例如,将*附加到特定的URL,   例如/ videos / samples / 2015 / ,以指定以下所有路径   / videos / samples / 2015 /。采用 ?匹配任何单个字符,例如   / photography / / samples / 201?/ mypage。使用独立的*指定您的   整个网站。

还有

  

通过添加“ NOT”标识不应处理的区域   (包括T后面的空格)到路径字符串的开头。

因此,在第二个paths中,您同时使用NOT*是矛盾的。我认为您应该将其更改为:

 "paths": ["NOT /about/*", "NOT /home/*"]

或类似的东西

 "paths": ["NOT /about/*", "NOT /home/*", "/vailddomain/*"]

我尚未对其进行测试,但我认为这可能是正确的解决方案。