通用深度链接与Mandrill子域

我有适用于iOS应用程序Neighborly的Universal Deep Links(与neighbourly.co.nz关联)

我们发送电子邮件给我们的用户,并使用Mandrill跟踪点击。 电子邮件链接转到指向mandrillapp.com/path的子域clicks.neighbourly.co.nz/path,链接redirect到neighbourly.co.nz/newpath

我添加了applinks:clicks.neighbourly.co.nz到应用程序相关的域名。

我的苹果应用程序站点关联文件的path是一个通配符:[“*”]

但是,虽然链接neighbourly.co.nz正确启动应用程序,链接clicks.neighbourly.co.nz启动Safari。 我错过了什么?

我无法在网上find任何有关设置深度链接子域的信息

我的苹果应用程序站点关联文件需要托pipe在mandrillapp.com?

Mandrill的跟踪也可能与通用链接混淆。

通过禁用我的branch.io链接的mandrill跟踪来解决这个问题

mc:disable-tracking是关键

在我的模板中:

 <a href="http://mybranchsubdomomain.mydomain.com/something" mc:disable-tracking>Disabled Mandrill URL</a> 

我们使用Cloudflare (我推荐使用的一项了不起的服务)在DNS(相似)级别上解决了这个问题。

将Mandrill设置为使用Cloudflare作为DNS提供程序的自定义域进行点击跟踪。 例如下面的截图是在Mandrill和Cloudflare中设置的track.yourdomain.com。

山tracking跟踪域: mandrill设置

Cloudflare DNS: cloudflare dns

然后,在Cloudflare中使用他们的“页面规则”function来创build一个redirect到您在实际网站上托pipe的apple-app-site-association文件(假设它的规则可以在两个域上运行,否则您可能会redirect到另一个文件,我没有testing这个)

Cloudflare页面规则: cloudflare页面规则

我还添加了caching绕过规则,因为您希望track.yourdomain.com的所有请求都能到达原始服务器,并且不会被边缘服务器caching。

首先,您不需要在mandrillapp.com上托pipeapple-app-site-association文件。

第二件事你需要添加applinks:neighbourly.co.nz到应用程序相关的域名。

因为我只是检查,如果我要求您的服务器的apple-app-site-association与URL的URL https://clicks.neighbourly.co.nz/apple-app-site-association那么你的服务器返回404文件没有find&#x3002;

然后,我从urlhttps://www.neighbourly.co.nz/apple-app-site-associationfind并下载了你的apple-app-site-association ,我检查你使用的是旧格式 。 这里是你目前的关联文件

 { "applinks": { "apps": [], "details": { "2E23KCX8SU.nz.co.neighbourly.ios": { "paths":[ "*", "/" ] } } } } 

用这种新格式replace旧的apple-app-site-association文件

 { "applinks": { "apps": [], "details": [ { "appID": "2E23KCX8SU.nz.co.neighbourly.ios", "paths":[ "*", "/" ] } ] } } 

更新apple-app-site-association文件后,使用Applevalidation工具对其进行testing


应用searchAPIvalidation工具结果

对于 – > https://clicks.neighbourly.co.nz/apple-app-site-association 在这里输入图像说明


对于 – > https://neighbourly.co.nz/apple-app-site-association 在这里输入图像说明

Interesting Posts