llms.txt · xianyan.cc
APP 集成 更新于 2026-08-15

深度链接

职责:闲言 APP 的 URL Scheme / Universal Link / App Link 配置,让外部链接能精准唤起 APP 并跳转到对应页面。

深度链接(Deep Link)技术文档 v2.2

创建: 2026-05-23 | 更新: 2026-08-15
维护: Xianyan 团队

职责:闲言 APP 的 URL Scheme / Universal Link / App Link 配置,让外部链接能精准唤起 APP 并跳转到对应页面。

1. 支持的链接类型

平台 链接格式 说明
iOS (Universal Link) https://xianyan.cc/{path} 自动跳 APP,未安装则落网页
iOS (URL Scheme) xianyan://path 直接拉起 APP
Android (App Link) https://xianyan.cc/{path} 自动跳 APP
Android (Intent) intent://path#Intent;scheme=xianyan;... 浏览器兜底拉起
微信内 需用 Universal Link + 应用宝中转 微信禁 scheme 自定义

2. 路由前缀

前缀 目标
xianyan://poem/{id} 古诗详情
xianyan://poem/random 随机诗
xianyan://sentence/{id} 名句详情
xianyan://user/{id} 用户主页
xianyan://transfer?... 文件传输配对
xianyan://oauth/{platform} OAuth 绑定
xianyan://share/... 分享内容
xianyan://setting/... 设置页
xianyan://fortune/today 今日运势
xianyan://readlater/{id} 稍后再读详情
xianyan://hanzi/{id} 汉字详情
xianyan://poem/daily 每日一诗

共 12 个 deep link 路由,覆盖所有核心模块。

3.1 iOS(apple-app-site-association)

部署到 https://xianyan.cc/.well-known/apple-app-site-association

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appIDs": ["TEAMID.com.xianyan.app"],
        "components": [
          { "/": "/poem/*", "comment": "古诗详情" },
          { "/": "/user/*", "comment": "用户主页" },
          { "/": "/fortune/*", "comment": "运势" }
        ]
      }
    ]
  }
}

3.2 Android(assetlinks.json)

部署到 https://xianyan.cc/.well-known/assetlinks.json

[{
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "com.xianyan.app",
    "sha256_cert_fingerprints": ["..."]
  }
}]

4. 调试技巧

iOS:

# 在 Mac 上验证 Universal Link
xcrun simctl openurl booted https://xianyan.cc/poem/1234
# 或打开 Notes.app,点击链接

Android:

adb shell am start -a android.intent.action.VIEW \
  -d "xianyan://poem/1234"

5. 处理流程

mermaid flowchart TD A[点击 https://xianyan.cc/poem/1234] --> B{APP 已安装?} B -->|是| C[直接打开 APP 详情页] B -->|否| D[加载网页 fallback] A2[点击 xianyan://poem/1234] --> E{iOS / Android?} E -->|iOS| F{系统询问是否打开?} F -->|是| C F -->|否| D E -->|Android| C

6. 微信场景

微信内不允许直接拉起 APP,需要: 1. 用 Universal Link + 引导用户在浏览器打开 2. 或用应用宝中转(https://a.app.qq.com/o/simple.jsp?pkgname=com.xianyan.app

7. 关联文档