14

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

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

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

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

有没有人遇到过这个?

谢谢!

4

3 回答 3

3

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

于 2012-12-17T04:59:57.143 回答
1

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

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

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

代码
(来源:derrrick.com

因此,您的服务器必须生成并响应此页面,并在任何时候请求http://yoursite.com/hosted-redirect/some.data.here时填写 some.data.here 。

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

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

于 2015-02-26T21:52:58.413 回答
0

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

于 2020-04-24T04:35:27.493 回答