首页 > 解决方案 > 从 Safari 的自定义 URL 启动应用程序在 iOS >12.3 中无法正常工作

问题描述

我们通过电子邮件与我们的用户共享应用程序深层链接(通用链接),有时他们会被电子邮件服务提供商打包以确保安全。当用户点击这些包装的深层链接时,它不会直接打开应用程序,而是会在 Safari 中打开 URL。

我们在该网址上托管了一个页面。我们在那里捕获深层链接并尝试使用自定义 URL 方案 (myurlscheme://) 打开应用程序。但是如果没有安装 App,我们会尝试将用户重定向到 App Store 页面。

到目前为止一切正常,但似乎 Apple 在新版本的 iOS (>12.3) 中对 Safari 进行了一些更改。现在发生的情况是,如果安装了应用程序并且我们从 Safari(从自定义 URL)打开应用程序,则应用程序商店页面会在打开我们的应用程序后瞬间打开。

这是我们正在使用的 Javascript 代码:

window.location.href = 'myurlscheme://';
setTimeout(function() {
   window.location.href = "https://itunes.apple.com/us/app/myapp/id123456789?ls=1&mt=8";
}, 500);

有没有其他人遇到过这种情况。如果是,你能找到任何解决方案吗?

更新: 如果我们将超时时间设置为 4000(即 4 秒),那么它在启动应用程序后不会重定向到 App Store。

标签: iosios-universal-links

解决方案


推荐阅读