是否可以通过通用链接以编程方式在 iOS 上打开移动应用程序,还是只能通过用户点击来打开?
我猜出于安全原因,这可能是不允许的。
流程:
结果: 我的测试设备上有多种结果。
不是打开移动应用程序,而是在移动浏览器中打开等效网页https://open.myapp.app。 顶部有横幅“在 myapp 应用程序中打开”,并带有应用程序图标。
与一相同,但根本没有获得横幅。
请注意,对于我使用的某些 iOS 设备,它不会在浏览器中打开,而是会弹出一条消息“在“myapp”中打开此页面?”取消打开。 如果我单击“打开”,它将在应用程序中打开,如果我单击“取消”,它将在浏览器中打开,如上所述。
期望的结果:
打开的是移动应用程序而不是网页。
使用“用户点击”:
如果我有一个网页有一个打开网址的按钮https://open.myapp.app,它就可以正常工作。 当用户单击按钮时,这将毫无问题地打开移动应用程序。
其他: 我确实注意到这篇文章,但是子域不一样。网页位于 https://action.mypage.app,通用网址为 https://open.myapp.app:
当用户在 Safari 中浏览您的网站并点击通用链接时 在同一域中,系统在 Safari 中打开该链接,尊重 用户最有可能在浏览器中继续使用的意图。如果 用户点击不同域中的通用链接,系统打开 您的应用程序中的链接。
更新:
我目前通过从电子邮件按钮/url 到 https://open.myapp.app 的直接链接来实现此功能,并且按预期在应用程序中打开。 我已经删除了 Sendgrid 跟踪和我正在执行的任何自定义操作日志记录。我想如果我想记录操作,我需要在移动应用程序打开时执行此操作。
Apple 在某些情况下限制通用链接:
我想做的是添加一个 额外域 来托管按钮,并使用
window.location.href
而不是 a href