gpt4 book ai didi

ios - 是否可以使用自定义 url 方案打开 native iOS 应用程序,而无需网页直接指向自定义 url?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:57:51 25 4
gpt4 key购买 nike

我正在尝试通过单击电子邮件中的链接来打开原生 iOS 应用程序。我使用了“自定义 url 方案”。如果我在 safari 浏览器中键入“test://”,则会打开我的 native iOS 应用程序。但是,如果我单击电子邮件中的链接“test://”,它会以 http 为前缀,如“http://test//”,并且不会打开 iOS 应用程序。我浏览了很多链接,发现 “iOS 需要一个网页,它将重定向到 native iOS 应用程序的自定义 url” 以打开应用程序。 是否可以在不使用网页重定向到应用程序的情况下从电子邮件链接打开应用程序?

前进,感谢您的帮助!

最佳答案

简单的答案很可能是否定的,因为您几乎无法控制各个应用如何处理链接。复杂的答案是你应该做点什么。请注意,它并不总是需要返回完整的网页——在带有 Chrome 的 Android 上,您可以将 307 重定向直接触发到 Chrome 意图。

您可以设置一个简单的网络服务器,当被 ping 时,返回 `window.location = 'test://'。

或者更好的是,您可以尝试在 iframe 中打开 URI 方案,然后在应用程序不存在时回退到 Web URL。这可以通过以下机制实现:

  1. 在 iOS 9 上,使用通用链接
  2. 在 Chrome(很快,Firefox 41.0!)中使用 Chrome Intents
  3. 在所有其他浏览器上,使用客户端 javascript

这是客户端 javascript 的示例:

<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>

这正是我们公司 branch.io 所做的。我们一直在处理浏览器和 webview 的变化,因为总是有新的场景需要覆盖。在决定如何将用户深度链接到您的应用时,查看用户代理字符串至关重要。

关于ios - 是否可以使用自定义 url 方案打开 native iOS 应用程序,而无需网页直接指向自定义 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32518333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com