单篇 · 详情 · 每周四更新

周五晚上十一点四十七分,我在小米 13 上点了第三次「打开 App」,QQ 浏览器还是停在那个白色跳转页,一动不动。

这篇不讲空话:从复现步骤、抓包记录到手动构造 Intent 的排查过程,全都写在下面。顺带说一句,我真心觉得把「跳转失败」甩给用户的手机厂商是一个很偷懒的产品决策。

作者:江晚 发布于 2026-04-09 约 2,400 字 · 阅读 9 分钟
#深度链接 #Android Intent #浏览器白屏 #复现日志 #吐槽

最近写下的具体记录

每一条都对应一个真实的晚上、一台真实的手机、一段可复现的失败路径。按时间倒序排列,新条目置顶。

复现日志

在小米 13 上连续三次点击「打开 App」,QQ 浏览器停在白屏页

2026 年 4 月 3 日晚 23:47,我拿同事老周的小米 13(HyperOS 2.0.3)实测:从 QQ 浏览器 14.2.1 里点开一个唤端链接,页面停留在 qqbrowser:// 的白色过渡页,共触发三次,三次全部卡住。

01 4 月 6 日 场景复现
排查笔记

查了两小时才发现:问题出在 scheme 与 intent-filter 的匹配上

抓包之后发现浏览器根本没发出 Intent,而是把 URL 当成了一个未知协议。对照 Android 官方文档第 12 节关于 VIEW action 的说明,我意识到目标 App 的 data 标签少写了一个 host。

02 4 月 5 日 Intent 分析
观点

把锅甩给「浏览器不跳转」,是产品经理最省事的回答

我给一个做投放的朋友解释这件事时,他反复强调「是浏览器的问题」。但作为写代码的人,我知道唤端链路至少涉及三个环节:页面协议、Intent 匹配、系统后台限制。只盯浏览器一个点,等于放弃排查。

03 4 月 4 日 评论
工具

用 adb shell am start 手动验证:一条命令确认是不是 App 侧的问题

命令是 adb shell am start -a android.intent.action.VIEW -d "yourScheme://path"。如果这条走通而浏览器不走,至少能排除 App 本身没注册协议。我在红米 Note 12 上试了 4 次,3 次成功,1 次失败。

04 4 月 2 日 命令行
版本差异

对比 QQ 浏览器 13.9 与 14.2:同一链接,结果完全相反

我翻出旧备用机一加 9 上的 13.9 版本,同样的唤端链接点击后 2 秒内正常拉起目标 App。换到 14.2 之后卡住。版本号之间差了一个大版本,行为却像两个产品,这种变更必须有文档说明。

05 3 月 31 日 版本对比
材料

把 Android 官方 Intent 文档第 12 节打印出来贴在桌前

这不是夸张。我晚上九点把 Intent and Intent Filters 那几页从打印机里拿出来的,A4 纸一共 6 页,用红笔把 CATEGORY_BROWSABLE 那段圈了三遍。只有逐字读,才能发现浏览器到底在拦什么。

06 3 月 30 日 文档
现场

在地铁 2 号线上给一位做运营的读者演示了问题全过程

他坐在我对面,手机是 iQOO Neo 9。我们约定用同一个短链分别在 Chrome、Edge、QQ 浏览器里点击:前两个 1.5 秒内跳走,QQ 浏览器一直显示空白。他当场说了一句「原来是浏览器在装死」,我记了下来。

07 3 月 29 日 读者互动
反证

关掉「智能拦截」后,跳转成功率从 0 变成 4/5

在 QQ 浏览器的设置里翻到「安全与隐私」→「网页智能保护」,关闭后重试同一链接 5 次,成功 4 次,剩下 1 次仍然失败。这个数据至少说明:拦截策略是主要变量之一,而非全部原因。

08 3 月 28 日 对照实验
读者来信

一位在杭州做独立开发的朋友寄来 11 页测试记录

他叫陈默,做的是本地生活类 App,从 2025 年 11 月起每周记录一次唤端结果。11 页 Excel 里,共 268 次尝试,失败 61 次,失败率接近 22.7%。这组数字比我所有主观感受都更有说服力。

09 3 月 26 日 数据
方法论

用「三层排除法」定位唤端失败:页面、App、系统

第一层看页面是否真的发出跳转请求,第二层看 App 是否注册了对应 intent-filter,第三层看系统是否限制后台启动。三层依次验证,能避免在错误层面反复浪费晚上。这个方法我在四个机型上都用过。

10 3 月 25 日 排错
旧文重读

重读 2024 年那篇《唤端不是玄学》,当时我太乐观了

那篇文章里我写「只要协议写对,跳转就能成」,现在看这话过于理想。两年过去,系统限制、浏览器拦截、版本差异叠加在一起,已经让一次成功的跳转变成概率事件。我欠读者一个更准确的版本。

11 3 月 23 日 回顾
测试

顺手试了 Windows 11 上的 QQ 浏览器:桌面端反而没有这个问题

同一条链接在 Windows 11 + QQ 浏览器 15.0 里点击,系统直接弹出「是否打开关联应用」对话框,点确认后成功。桌面端依赖的是系统协议关联,逻辑比移动端简单得多。对比之下,移动端那条链路更像黑箱。

12 3 月 21 日 桌面端

关于我:江晚

江晚的头像,一张在咖啡馆里使用笔记本电脑的女性照片

我是江晚,一个写移动端工程与产品评论的独立作者。白天做 Android 端的技术支持,晚上在「qq浏览器打开app不跳转」这个站点上,把当天遇到的失败案例逐条记录下来。

这个站点从 2024 年 9 月开始更新,起因是我自己在一个唤端问题上卡了整整三个晚上,翻遍中文互联网也没找到一份能照着走的排查清单。于是我决定自己写一份,不修边幅,只求具体。

我不接广告,也不收任何厂商的稿费。每篇文章里的机型、版本号、失败次数,都是我在真机上一条条点出来的。如果哪天你读到某个数字对不上,欢迎写信来骂我,我会去复测。

这个站点每周四更新,雷打不动。偶尔会因为发不出跳转链接的愤怒而提前一天写作,那说明当天遇到的问题确实把我惹到了。

今天看到的一句话

所有把用户困在白色加载页里的跳转失败,本质上都是产品质量问题,而不是用户手机的问题。
—— 摘自陈默在 2026 年 3 月 26 日发来的测试记录邮件第一页,手写扫描件