You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

网页中deeplink正确打开方式及无需网页触发deeplink的方法

你提到的这类以intent://开头的链接是安卓系统专属的Intent协议深度链接,直接在浏览器地址栏输入无法唤起应用是浏览器的安全限制:只有用户主动触发的交互行为才可以唤起应用,手动输入地址栏的行为默认不会触发跳转逻辑。
这类deeplink的标准使用规则如下:

  • 格式必须符合安卓官方Intent URI规范,基础结构为:intent://[host/path]#Intent;[参数键值对];end,常用必填/可选参数包括:
    • package:目标应用的包名,用于避免多应用匹配冲突,大部分场景下为必填项
    • scheme:目标应用注册的跳转协议,需和应用Manifest里注册的配置一致
    • action、category、component:可选参数,用于精准匹配应用内的响应页面
    • S.[参数名]=[参数值]:用于向目标应用传递字符串类型的额外参数
  • 目标应用必须在AndroidManifest.xml中注册对应的Intent Filter,匹配对应的host、scheme、包名等参数,否则跳转无响应
  • 网页场景下必须在用户主动交互的事件回调(如点击、触摸事件)中触发跳转,直接自动执行JS跳转、iframe加载链接都会被浏览器拦截,你提到的a标签点击跳转就是符合要求的触发方式,示例代码如下:
<a href="intent://www.youtube.com/watch?v=uYqxf5eiLSU#Intent;package=com.google.android.youtube;scheme=https;end">Click to open in android.</a>
  • 跳转失败时可配置S.browser_fallback_url参数指定兜底跳转的网页地址,避免用户看到系统错误提示
无需网页的Deeplink触发方式

1. ADB命令触发

这是开发测试阶段最常用的方式,只要设备开启了USB调试,直接执行以下命令即可触发跳转:

adb shell am start -a android.intent.action.VIEW -d "intent://www.youtube.com/watch?v=uYqxf5eiLSU#Intent;package=com.google.android.youtube;scheme=https;end"

2. 安卓原生应用内触发

原生安卓开发时可以直接解析Intent URI构造跳转逻辑,不需要依赖网页,示例Java代码:

try {
    Intent intent = Intent.parseUri("intent://www.youtube.com/watch?v=uYqxf5eiLSU#Intent;package=com.google.android.youtube;scheme=https;end", Intent.URI_INTENT_SCHEME);
    if (intent.resolveActivity(getPackageManager()) != null) {
        startActivity(intent);
    }
} catch (URISyntaxException e) {
    e.printStackTrace();
}

3. 桌面快捷方式/小组件触发

可以通过系统自带的快捷方式功能,或者第三方快捷方式工具,自定义配置桌面快捷方式的跳转目标为对应的Intent链接,点击快捷方式即可直接唤起对应应用页面。

4. 系统通知、短信等场景触发

安卓系统的推送通知、短信、日历提醒等系统级场景中,都可以直接配置Intent Deeplink作为跳转目标,用户点击对应内容即可直接唤起应用,不需要经过网页中转。

内容的提问来源于stack exchange,提问作者viwichi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 21:45:03