ios - 从 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。
解决方案
推荐阅读
- sql - 按一列中的名称查询两个分组并显示每个分组元素的总数
- asp.net-mvc - Square Payment Form Request Card Nonce 在 safari 版本中不起作用
- android - 房间升级数据库异常
- lua - 如何保护 Nodemcu 中的 lua 脚本
- ios - 快速使用 GL 转换
- python - 创建一个浮点对象的numpy数组
- css - > *:first-child 和 > :first-child 之间是否存在功能差异?
- python - bash 脚本中的 bash 代码在 Python (3.6) 中不起作用
- wordpress - 带有 acf 库共享图像的 Wordpress 单一个人资料页面
- javascript - 将 onChange 方法传递给子组件时出现“无法读取未定义的道具”的错误