这是您需要在服务器上托管并链接到电子邮件、社交媒体等的页面的具体示例。只需替换为您的应用程序的 URI 和您的 App Store 链接。请注意,iframe 适用于更多浏览器。
<!DOCTYPE html>
<html>
<body>
<script type="text/javascript">
window.onload = function() {
// Deep link to your app goes here
document.getElementById("l").src = "my_app://";
setTimeout(function() {
// Link to the App Store should go here -- only fires if deep link fails
window.location = "https://itunes.apple.com/us/app/my.app/id123456789?ls=1&mt=8";
}, 500);
};
</script>
<iframe id="l" width="1" height="1" style="visibility:hidden"></iframe>
</body>
</html>
因此,如果用户安装了您的应用程序,则带有 URI 的链接将成功,并且您将存在浏览器,然后才能触发重定向到 App Store 的脚本。如果用户没有您的应用程序,则重定向成功(在简短的丑陋错误消息之后)。
还有第二种可能性(避免错误消息)首先依赖于 cookie,而 javascript 重定向仅作为后备。这是逻辑:
当没有应用程序的用户第一次点击指向您应用程序的链接时,他或她会被直接重定向到 App Store。这是通过指向您的应用程序的链接来实现的,该链接实际上是您的服务器上使用重定向动态生成的页面。您创建一个 cookie 并在您的后端记录 IP 地址、操作系统、操作系统版本等的“数字指纹”。
当用户安装并打开应用程序时,您会收集另一个“数字指纹”并将其发送到您的后端。现在您的后端知道该链接已安装在对与您的应用关联的链接的任何后续访问中,您的服务器会根据随请求发送的 cookie 确保动态生成的重定向页面指向应用,而不是应用商店。
这避免了丑陋的重定向,但涉及大量工作。我在Branch工作,我们在那里构建了它,并将它提供给任何想要使用它的开发人员。如果您对从头开始构建它有任何疑问,请随时与我们联系。