【发布时间】:2021-11-19 12:55:20
【问题描述】:
我已经实现了 Apple 记录的 iOS 通用链接,将我的 apple-app-site-association 文件托管在服务器的根目录中。我可以看到该链接工作正常,当在测试设备上触摸时,它确实确认在上下文菜单中打开应用程序标题。但是,点击时,该链接将首先打开应用程序,然后通过 Safari 浏览器访问我网站上的相关页面,将应用程序置于后台。
有没有人遇到过同样的问题?如果是这样,有没有办法解决它?这是我的示例 apple-app-site-association 文件:
{
"applinks": {
"apps": [],
"details": [
{
"comment": "Some comment.",
"appID": "TEAMID.com.companyname.bundleidentifier.ios",
"paths": [
"NOT /_/*", "/*"
]
}
]
}
当然,我在这个示例中屏蔽了 TEAMID 和捆绑包 ID
【问题讨论】:
-
你是如何在你的应用程序中处理传入的 url 的?你不能简单地打电话给
open。如果 iOS 应用程序在通用链接上调用open,则假定该应用程序无法处理该链接并且它想在 Web 浏览器中打开它。您需要直接路由到应用中的相关屏幕以响应传入的 url -
嗨@Paulw11 iOS 应用程序正在正确处理 url,应用程序实际上是通过链接打开的,但放在后台,Safari 网页进入前台。我应该注意到该应用程序是通过 TestFlight 安装在设备中的,所以我想知道这是否是 TestFlight 人工制品
-
不,如果您的应用正在打开,然后 Safari 正在打开,那么您的应用会导致 Safari 打开。 edit你的问题,展示你如何处理传入的链接。