文章目录
去年就在调研如何从短信链接跳转到微信小程序,搜索了好多,也去官方论坛转了一圈,得到的回复只有一个:不可能!
今天组内大神在逛帖子的时候告知我们微信官方文档有惊喜,跑去一看,果然很惊喜呀~
实现方案 需下载二维码 点击短信中链接,打开H5页面保存页面中小程序二维码(包含指定页面地址和传参)打开微信,扫描二维码进入小程序指定页面 使用URL Schema
参考文档
点击短信中链接,打开H5页面进入页面直接自动触发跳转操作,到小程序指定页面 微信云开发
参考文档
在云开发中开通静态网站,然后将H5部署(收费)使用 cloudbase.sendsms 接口,即可触发下发短信(需要强制使用微信短信平台) 实现方案对比 方案优点缺点
需下载二维码
实现方案可控,免费
体验感极差
使用URL Schema
实现方案可控,免费, 体验感可以
只能到正式环境中测试
微信云开发
依赖云开发,实现简单,体验感极好
收费,强制依赖微信短信平台
实践出真知(URLSchema) 获取微信access_token
GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=appid&secret=appSecret
返回参数:
{
"access_token": "access_token",
"expires_in": 7200
}
获取openlink
被这个请求方式折磨了一通,access_token是放在请求url中,其他参数是放在body中
POST https://api.weixin.qq.com/wxa/generatescheme?access_token=access_token
返回参数:
{
"errcode": 0,
"errmsg": "ok",
"openlink": "weixin://dl/business/?t=12345678910"
}
H5页面(模拟短信跳转,验证ok)
短信链接跳转与H5页面跳转类似,此处用H5页面跳转为例
location.href = 'weixin://dl/business/?t=12345678910'
反馈问题 ios和Android 对URLSchema兼容性
感谢Mr_saisai大佬的指正,微信官方文档上有一段关于系统兼容性问题的描述,IOS无需额外添加H5页面进行辅助跳转~
iOS系统支持识别URL Scheme,可在短信等应用场景中直接通过Scheme跳转小程序。
Android系统不支持直接识别URL Scheme,用户无法通过Scheme正常打开小程序,
开发者需要使用H5页面中转,再跳转到Scheme实现打开小程序
开发者工具可直接测试URL Schema
以前需要将未完成的页面发布到正式环境才能进行跳转测试,今天前端大佬悄咪咪告诉我:在微信开发者工具中不用发布页面也能测试啦~~ nice
URL Schema 官方最新变更20220411
获取 URL Scheme
自 2022 年 4 月 11 日起,URL Scheme有效期最长 30 天,不再支持永久有效的URL Scheme、不再区分短期有效URL Scheme与长期有效URL Scheme。若在微信外打开,用户可以在浏览器页面点击进入小程序。每个独立的URL Scheme被用户访问后,仅此用户可以再次访问并打开对应小程序,其他用户无法再次通过相同URL Scheme打开该小程序。 在本次规则调整生效前已经生成的URL Scheme,如果有效期超过30天或长期会被降级为30天有效网页链接唤起服务是什么意思网页链接唤起服务是什么意思,只能被1个用户访问,开始时间从调整日期开始计算。
针对以下两个变更,对原有的URL Schema生成代码无影响(无需变更代码逻辑),只是微信内部会将参数统一处理!
一个urlSchema只能一个用户访问 调用上限及有效期
调用上限
Scheme 将根据是否为到期有效与失效时间参数,分为短期有效Scheme与长期有效Scheme:
单个小程序每日生成 Scheme 上限为50万个(包含短期有效 Scheme 与长期有效 Scheme)
有效时间超过180天的 Scheme 或永久有效的 Scheme 为长期有效Scheme,单个小程序总共可生成长期有效 Scheme 上限为10万个,请谨慎调用
有效时间不超过180天的 Scheme 为短期有效Scheme,单个小程序生成短期有效 Scheme 不设上限
持续更新中。。。
版权声明
本文仅代表作者观点。
本文系作者授权发表,未经许可,不得转载。
发表评论