iOS AppLinks 仅不适用于邮件应用程序
Posted
技术标签:
【中文标题】iOS AppLinks 仅不适用于邮件应用程序【英文标题】:iOS AppLinks only not working from mail app 【发布时间】:2021-12-13 05:10:26 【问题描述】:我们正在创建一个新应用程序,但我在使用应用程序链接方面遇到了一些问题。
所以我添加了权利,并在我的服务器上托管了“.well-known/apple-app-site-association”文件,这似乎一切都很好。
然后我通过使用以下命令在我的模拟器上触发它们来测试应用链接:/usr/bin/xcrun simctl openurl booted "https://links.domain.com/path/token"
并很好地触发我的应用程序。
然后我开始在真实设备上进行测试,突然之间它不再工作了,我在这些设备上使用默认的邮件应用程序,这就是问题所在。
如果我将链接放在便笺(便笺应用程序)中,它会打开我的应用程序。如果我从 GMail 应用程序打开我的电子邮件,它会启动我的应用程序,但是来自同一个 gmail 帐户但在 Apple Mail 应用程序内部的完全相同的电子邮件不会做任何事情......
我现在在 ios 13 和 iOS14 上都试过了。
托管的 apple-app-site-association 文件的内容如下所示:
"applinks":
"apps": [],
"details": [
"appID": "0000X0XXXX.com.domain.appname",
"paths": ["*"]
]
,
"webcredentials":
"apps": [ "0000X0XXXX.com.domain.appname" ]
欢迎任何关于我们下一步可以尝试的想法。我唯一能想象的是,邮件应用程序会额外检查您的应用程序是否在 AppStore 上,但这有点奇怪,不是吗?!
【问题讨论】:
我刚刚在电子邮件中仔细检查了我的应用程序的通用链接,它从 iOS 邮件应用程序启动了我的应用程序就好了(iOS 15.1)。我不确定这里会发生什么。我的 AASA 文件和你的一样(但没有webcredentials
部分)。
@Rob webcredentials
我后来添加的,但起初它没有,也无法在邮件应用程序中工作。
【参考方案1】:
好的,我确实找到了问题并修复了...实际上并没有那么难,我不小心撞到了它...
Apple 在解析 html 方面似乎做得非常糟糕,尤其是链接的 href
属性。虽然我找不到任何其他行为相同的客户端,但似乎如果您不将方案(http 或 https)放在 url 前面(所以我只使用 google.com 而不是https://google.com)您提供给href
属性,然后Apple 会从中做出一些自己的东西:x-webdoc://30E09690-F388-4ED2-BB46-14DC829B974C/google.com
。
我可以在 Apple Mail 应用程序上发现这一点,但是在我遇到问题的 iPhone 上,它甚至没有被识别为链接,所以他们自己的应用程序之间的行为似乎有点不同。
最后,我没有将https://
放在自动生成的URI 前面是我的错误。但是我确实认为 Apple 在构建链接 HTML 标记方面做得很差。
【讨论】:
以上是关于iOS AppLinks 仅不适用于邮件应用程序的主要内容,如果未能解决你的问题,请参考以下文章
带有自定义声音的 UILocalNotification 仅适用于 iOS 6.1 和 iOS 7.1,不适用于 iOS 7.0
iOS 上的 Plupload 仅适用于新照片,不适用于相机胶卷