前言:
自 2023 年 12 月 19 日起,微信官方团队新增明文URL Scheme跳转小程序
开发者无需调用平台接口,可自行根据如下格式拼接 appid 和 path 等参数,作为 URL Scheme 链接。就像这样:用window.location.href就能跳转小程序
weixin://dl/business/?appid=*APPID*&path=*PATH*&query=*QUERY*&env_version=*ENV_VERSION*
那明明已经有这个方便的方法了,我们还要用加密URL Scheme跳转小程序呢
原因就是因为这个方法出来的时间还太短了,有限制,看我下面这张图:
跳转小程序 | ||||
机型 | 微信浏览器 | 外部浏览器 | ||
加密URL Scheme | 明文URL Scheme | 加密URL Scheme | 明文URL Scheme | |
iphone 13 | √ | √ | √ | √ |
iphone 12 Pro | √ | × | √ | × |
安卓 中兴 | √ | × | √ | √ |
安卓 华为 | √ | × | √ | √ |
安卓 红米9A | √ | × | √ | √ |
安卓 红米8A | √ | × | √ | √ |
安卓 红米note7 | √ | × | √ | √ |
安卓 华为 p30 | √ | × | √ | √ |
Redmi Note ll Pro | √ | × | √ | √ |
经过测试,安卓机型在微信浏览器中使用明文URL Scheme打开h5页面是不能跳转小程序的,但是加密URL Scheme可以看出,不管微信浏览器还是外部浏览器,都是可以跳转小程序的
获取加密URL Scheme
准备工作:
apipost: 接口测试工具,只是用来测试,官网地址->Apipost-API 文档、设计、调试、自动化测试一体化协作平台
appid:需要跳转的小程序的appid,在微信公众平台获取
secret :需要跳转的小程序的secret ,在微信公众平台获取
官方文档 :获取加密scheme码 | 微信开放文档
第一步 :先获取access_token
通过微信官方接口获取到access_token
接口:
GET https://api.weixin.qq.com/cgi-bin/token
参数:
示例:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=*APPID*&secret=*SECRET*
返回:
这样就拿到了access_token
第二步:获取URL Scheme
接口:
POST https://api.weixin.qq.com/wxa/generatescheme?access_token=ACCESS_TOKEN
参数 :
示例:
access_token是url参数,不要放body里面
https://api.weixin.qq.com/wxa/generatescheme?access_token=77_g3B00SOnlUGRrcvn4uHysSOq1GnzhZUYkzZLveLu-fRdTiosZPmGRR0Kmam7LAgrSGKBTmWZmF1CSYI6-ln8VpzU-Zok2BvX5H3nCXX3v2qlKBXY0iyt-TEozDcJIUcAEACBN
返回:
这样就拿到了加密URL Scheme链接,使用window.location.href就能实现h5跳转小程序了
注:如果接口报错 40002 invalid grant_type rid: 65b89ea8-720af384-6b1352b1"
可能原因: 小程序是个人的,不是公司的 (猜测)
------------- 如果觉得有用,帮到了你,麻烦浪费你 0.01 秒钟点个赞,谢谢 -------------