繁体   English   中英

iOS - 从 Chrome 使用 URL Scheme 打开应用程序

[英]iOS - Open an app with a URL Scheme from Chrome

我已经阅读了很多关于如何从URL scheme打开应用程序的博客和示例(例如,这个博客),当我从移动 safari调用我的应用程序时,它似乎工作得很好。 例如,当我在移动 safari 中调用testapp://some.data.here时,它会打开我的testapp ,我可以解析出 some.data.here。

但是,当我在 iOS- Chrome 中调用testapp://some.data.here时,它只是搜索该术语而不是调用应用程序。

有没有办法让 iOS Chrome将 URL 识别为已注册的应用程序,就像移动 safari那样?

当我用谷歌搜索这个话题时,我看到了很多关于如何从应用程序在 chrome 中打开 url 的评论,但反之则不然。

有没有人遇到过这个?

谢谢!

由于该Chrome应用似乎发展方式,它似乎并没有这种可能目前没有越狱(即使这样,不容易)。 你应该去bug 谷歌浏览器 iOS 团队来解决这个问题(例如, 在谷歌搜索之前尝试在所有注册的应用程序中使用 URL 方案打开)。 抱歉,我没有更多用处,但似乎没有简单的方法可以解决它。

有一个复杂的解决方法,但您可能不会对构建它感到太兴奋,因为它涉及托管 Web 服务器以使用适当的重定向动态生成页面。 这是我们在Branch构建的内容的过度简化表示。 这包括一些帮助您入门的代码,尽管 Web 服务器需要一些此处未描述的设置。

  1. 您将链接到http://yoursite.com/hosted-redirect/some.data.here而不是 testapp://some.data.here 。

  2. 你的服务器应该监听路由 /hosted-redirect,获取 some.data.here 并构建以下页面(body here):

代码
(来源: derrrick.com

所以你的服务器必须生成并响应这个页面,填写 some.data.here,任何时候http://yoursite.com/hosted-redirect/some.data.here被请求。

轻量级节点应用程序可以使用单个文件执行此操作。

我刚刚为我的一个应用程序测试了一个静态文件,这绝对有效。

我们可以简单地使用 JavaScript 打开深层链接,它在 iOS 的 chrome 和 safari 中都可以正常工作。 如果您想使用 JavaScript 实现自定义 url 方案,您可以使用以下代码: document.location = "testapp://"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM