阻止IOS / Safari从链接打开应用程序

时间:2019-12-19 20:30:19

标签: html ios iphone safari

我有一个具有IOS应用程序和Web应用程序的应用程序。

当用户忘记密码时,他们会收到一封包含以下链接的电子邮件:

https://my.domain.com/SetPassword/?code=some_code_here

IOS应用程序还将该域绑定到其设置中(深链接域权限内容),当用户在其IOS设备上通过电子邮件单击该链接时,它将打开该应用程序-而不是网页上重置其密码

有没有办法防止这种情况?用浏览器而不是应用程序打开网页?

添加target="_blank"无效。

这是电子邮件中的来源<a>: (为便于阅读而格式化)

<a style="color:#c5534d;
font-family:verdana,sans-serif;
font-size:12px;
font-weight:bold"
href="https://my.domain.com/SetPassword/?code=some_code_here_test_1"
target="_blank" 
data-saferedirecturl="https://www.google.com/url?q=https://my.domain.com/SetPassword/?code=some_code_here_test_1">
     https://my.domain.com/SetPassword
</a>

1 个答案:

答案 0 :(得分:1)

要解决此问题,我必须添加一个apple-app-site-association文件,并将此路由设置为不向移动应用程序开放。

我必须在路径数组中包含"NOT /myroute/*"NOT阻止此路线打开应用。

对我来说文件看起来像这样:

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "62AGA19JEA.com.domain.subhost",
                "paths": [
                    "*",
                    "NOT /SetPassword/*"
                ]
            }
        ]
    }
}

文档: https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html