V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GooglePlay
V2EX  ›  iOS

iOS 上没有任何浏览器能够拦截这个按钮跳转到 App,它是什么黑科技?或者说, iOS 提供 API 允许网页不警告而直接跳转 App?

  •  
  •   GooglePlay · 2023-01-12 18:25:54 +08:00 · 3072 次点击
    这是一个创建于 467 天前的主题,其中的信息可能已经有所发展或是发生改变。

    按钮来自知乎专栏网页下方的「 X 条评论」,如图:

    链接供测试: https://zhuanlan.zhihu.com/p/598270397

    备注 1:微信竟然能拦截,尽管微信不是浏览器。

    备注 2:

    如果你的 iOS 弹出了「……想要打开“知乎”」对话框,那没用,因为这个弹窗是一次性的,当你点击「打开」后,下次就再也不会弹出这个对话框了。这也是为什么一些 iOS 浏览器内置了自己的拦截跳转的弹窗,比如火狐浏览器。(反例是 Chrome ,它不内置跳转拦截,导致如果有网页自动跳转到 App 的话,没有任何办法拦住)

    第 1 条附言  ·  2023-02-11 18:06:17 +08:00
    知乎现已取消了那个地方的 Universal Link 跳转。取而代之的是普通的 URL Scheme 了——说不定是他们的工程师看了这篇帖子。

    如果要测试 Universal Links ,可以打开携程的首页,上面的「机票」等按钮就是 Universal Link 跳转。
    10 条回复    2023-10-23 14:17:10 +08:00
    billlee
        1
    billlee  
       2023-01-12 20:03:50 +08:00
    不知道这里是不是有什么技术难题,android 上的 Firefox 用自己的引擎,也做不到 100% 拦截。
    RiverMud
        2
    RiverMud  
       2023-01-12 20:10:49 +08:00 via iPhone   ❤️ 4
    大部分 App 有这个操做我都能忍,唯独知乎不能忍。

    你知乎 App 做的好也就算了,关键是一坨屎。曾经用知乎 App 的时候我无数次以为自己网卡了。还有那个推荐界面的刷新,他自己就给你刷新了,就怕你按着刚才的节奏读下去,非得自作主张刷点新的给你看看。
    weeei
        3
    weeei  
       2023-01-12 21:00:43 +08:00
    weeei
        4
    weeei  
       2023-01-12 21:02:43 +08:00
    Universal Links 是 iOS 上从 H5 跳转到 App 的标准规范,不是什么新东西。
    GooglePlay
        5
    GooglePlay  
    OP
       2023-01-12 22:52:33 +08:00
    @weeei
    我没有接触过 iOS 开发,我想咨询一下:

    目前,京东网页(m.jd.com)打开后就自动经由 URL Scheme 跳转到京东 App 。还好这是 URL Scheme ,大部分浏览器都能拦截下来。那如果京东用 Universal Links 在网页加载后立即自动跳转,浏览器有办法拦截吗?
    weeei
        6
    weeei  
       2023-01-12 23:44:21 +08:00
    @GooglePlay 可以拦截,WebKit 里留了接口,参考这个回答: https://stackoverflow.com/a/44942814
    fanyongbo
        7
    fanyongbo  
       2023-01-13 16:27:32 +08:00   ❤️ 1
    alook 测试可以拦截
    XXWHCA
        8
    XXWHCA  
       2023-01-14 20:49:37 +08:00 via Android   ❤️ 1
    并不是黑科技,只是想不想拦截的问题。唤醒第三方应用都是自定义 Scheme ,像微信这种属于最简单粗暴的做法,只要是第三方 Scheme 都弹框。系统浏览器应该是维护了一套名单映射,这个域名允许了一次就不会再弹窗询问了。
    GooglePlay
        9
    GooglePlay  
    OP
       2023-01-14 21:23:33 +08:00
    @XXWHCA
    「唤醒第三方应用都是自定义 Scheme 」
    楼上不是说还有 Universal Links 吗?
    Office365
        10
    Office365  
       183 天前
    @billlee @RiverMud @weeei @GooglePlay @fanyongbo @XXWHCA

    iCab Mobile 现已正式支持拦截 Universal Links 的跳转。见图: https://picx.zhimg.com/80/v2-74394b8b1de519b7a80b53a8ce9961a6_720w.png
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1022 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 20:05 · PVG 04:05 · LAX 13:05 · JFK 16:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.