深层链接是通过url直接打开app内具体页面的技术,核心类型包括自定义scheme、http/https网页链接和app links/universal links;android需配置assetlinks.json与autoverify intent-filter,ios需apple-app-site-association验证;参数需手动解析并路由跳转,跨平台框架需桥接原生能力统一处理。

深层链接(Deep Link)不是跳转到 App 首页,而是用一个 URL 直接打开 App 内某个具体页面,比如 myapp://profile?uid=1001 打开用户个人页,https://shop.example.com/product/2056 打开商品详情页。它本质是把网页路由逻辑搬到原生 App 里,靠系统 Intent(Android)或 URL Scheme / Universal Links(iOS)实现唤起与参数传递。
核心类型与适用场景
目前主流有三类,选型要看是否已上线、是否需强校验、是否在微信等受限环境:
-
自定义 Scheme 链接:如
myapp://order?id=8892。配置简单、兼容老系统,但 Android 无验证机制,iOS 9+ 会弹确认框,且易被其他 App 劫持同名 scheme。 -
HTTP/HTTPS 网页链接:如
https://app.example.com/news/123。用户点击后先走浏览器,再由系统尝试唤起 App。无需额外配置,但存在“白屏跳转”或被浏览器拦截风险。 -
应用链接(App Links / Universal Links):同样是
https://app.example.com/news/123,但通过域名验证(Android 的assetlinks.json、iOS 的apple-app-site-association)让系统默认直接打开 App,不弹选择框。安全性高、体验好,是线上正式环境首选。
Android 端关键配置步骤
以支持 https://app.example.com/detail/789 为例,需同时完成服务端与客户端动作:
开箱即用的技能链路由引擎。13 条预定义链覆盖搜索、开发、审查、MLOps、法律、创意等场景,三层路由架构(触发词→SAD反馈→DAG编排),recall@10=96.97%。配置驱动(chains.yaml),零代码扩展。pip install skill-weave-chains 一键安装。
- 在服务器根目录部署
/.well-known/assetlinks.json,声明包名和签名 SHA256 指纹,供 Google 校验归属。 - 在
AndroidManifest.xml的 Activity 中添加 intent-filter,并设android:autoVerify="true":
安装后首次打开需联网校验;校验失败时自动降级为普通网页链接。
参数解析与页面跳转逻辑
链接里的路径和 query 不会自动映射到页面,需要你在启动 Activity 时主动提取并分发:
- 在
onCreate()或onNewIntent()中调用getIntent().getData()获取 Uri 对象; - 用
uri.getPath()取出/detail/789,用uri.getQueryParameter("ref")提取来源标记; - 结合路由表(如手动 switch、或用 Jetpack Navigation +
NavDeepLinkBuilder)跳转到对应 Fragment 或 ViewModel 初始化数据。
跨平台框架中的处理要点
Flutter、React Native 等需桥接原生能力,不能只靠 JS 层解析:
- Flutter 推荐使用
go_router,在onGenerateInitialRoutes中读取初始 deep link,再用GoRouter.of(context).goNamed()导航; - React Native 需依赖
Linking.addEventListener('url', handler)监听外部唤起,并确保AndroidManifest和Info.plist已注册对应 scheme 或 domain; - 无论哪种框架,首次冷启和后台热启的 Intent 获取时机不同,务必统一入口做参数归一化处理。










