聊聊微信小程序URL Scheme和URL Link
- 概念
1、URL Scheme
URL Scheme是一种特殊的URL格式,它允许开发者为自己的App定义一种独特的URL格式,从而实现与其他App或Web页面的交互。通过URL Scheme,我们可以直接打开指定的App页面,而无需经过App的首页。这种技术在实际应用中具有很大的价值,如分享内容、实现跳转等。
URL Scheme协议完整格式:scheme://host:port/path?query_parameters#fragment_identifier
实现原理:
1)需要应用先注册特定格式的URL Scheme,例如微信的明文URL Scheme格式:weixin://dl/business/?appid=*APPID*&path=*PATH*&query=*QUERY*&env_version=*ENV_VERSION*。iOS实现 在Info.plist中注册。
2)在另外一个APP应用打开URL Scheme链接,操作系统的URL处理机制会检查这个URL是否符合任何已注册的应用的URL Scheme。如果匹配,操作系统就会启动相应的应用,并将URL传递给应用进行进一步的处理。
由于iOS和Android平台的不同,iOS浏览器可直接输入URL Scheme打开链接。Android 中部分浏览器可能无法直接通过输入 URL Scheme 打开应用,通常需通过 <a> 标签触发页面跳转,或由已注册该 Scheme 的 App 处理。
2、URL Link
就是统一资源链接,普通的超链接,是一种在互联网上标识和定位网络资源的地址标识符。它通常由协议(如HTTP、HTTPS)+ 域名 + 资源路径组成。
实现原理:
浏览器打开网页链接,呈现的就是普通网页。如微信小程序的:https://wxaurl.cn/R9rhJJP6pzk?cp=123。
- 微信URL Scheme和URL Link的异同
URL Scheme有2中模式:
1、明文模式
在小程序管理后台配置,操作「小程序管理后台 -> 设置 -> 隐私与安全 -> 明文 scheme 拉起此小程序」中进行声明。此功能有限制,针对非个人主体小程序开放。
格式:weixin://dl/business/?appid=*APPID*&path=*PATH*&query=*QUERY*&env_version=*ENV_VERSION*
2、加密模式
需通过接口实现:服务端接口或云函数。
格式:weixin://dl/business/?t=*TICKET*&cq=*CUSTOM PARAMETER*
2种模式的区别
明文 | 加密 | |
获取方式 | 管理后台配置 | 后端服务接口或云调用 |
参数 | ?appid=*APPID*&path=*PATH*&query=*QUERY*&env_version=*ENV_VERSION* | ?t=*TICKET*&cq=*CUSTOM PARAMETER* |
生成限制 | 可配最多200个不同path,不限次数 | 50万次/天/小程序 |
打开限制 | 300万次/天/小程序 | 300万次/天/小程序 |
查询限制 | 进行打开额度查询和链接状态查询 | |
有效时长 | 长期有效 | 可自定义过期时间,最长30天 |
URL Link
通过服务端接口可以获取打开小程序任意页面的 URL Link。适用于从短信、邮件、网页、微信内等场景打开小程序。 通过 URL Link 从微信外打开小程序的场景值为 1194。
当用户在微信内访问 URL Link ,会调整为开放标签打开小程序,场景值为1167。
URL Scheme和URL Link的区别
URL Scheme | URL Link | |
场景 |
适合 App 间直接跳转,从短信、邮件、微信外网页等场景打开小程序。 可通过其他APP直接打开,无需借助网页,Android中无法浏览器直接打开。 会弹窗提示打开小程序 |
适合跨平台链接适用于从短信、邮件、网页、微信内等场景打开小程序 有中间页面,其实是打开微信的一个页面。 会弹窗提示打开小程序 |
生成限制 |
明文模式:无限制 加密模式与URL Link共享50万次/天/小程序 |
与URL Scheme共享50万次/天/小程序 |
打开限制 |
每天通过 URL Scheme(加密+明文) 和 URL Link 打开小程序的总次数上限为300万 |
每天通过 URL Scheme(加密+明文) 和 URL Link 打开小程序的总次数上限为300万 |
有效时长 |
明文模式:长期有限 加密模式:可自定义过期时间,最长30天 |
可自定义过期时间,最长30天 |
打开模式 |
手机和PC端都能打开 |
不支持PC端 |
总结建议
-
-
选择 URL Scheme:
适合高频次、长期有效的场景(如 App 间跳转),需注意 Android 兼容性和安全性。 -
选择 URL Link:
适合推广类需求(如短信、邮件),需接受中间页跳转,但兼容性和安全性更高。
-
根据具体需求(如时效性、安全性、用户路径)选择合适的方案,必要时可组合使用(如通过 URL Link 跳转到中间页,再触发 URL Scheme)。