H5页面跳转微信小程序总结
随着微信生态的完善,H5页面在微信浏览器、其他浏览器打开,都支持唤起微信小程序。
下面对其实现思路进行总结。
一、微信浏览器环境
在微信浏览器中,H5页面通过小程序URL Scheme码唤起,其核心代码实现为:
location.href = 'weixin://dl/business/?t= *TICKET*'
TICKET的值为一个字符串,获取途径有如下三种方式:
1. 小程序后台生成scheme码
优点:没有开发量,可在小程序后台直接配置;
缺点:生成的scheme码,跳转到小程序的参数不可动态配置,不一定能满足业务需求;
2. 云函数调用获取scheme码
小程序端:创建云函数,提供获取小程序scheme码API;
H5:调用小程序云函数,通过scheme码打开小程序;
优点:(1).云开发基于node实现,工作量完全由前端同学完成;(2).参考可动态配置;
缺点:云开发有一定的学习成本(其实也比较容易);
3. 调用服务端接口
后端:提供获取小程序scheme码的接口;
H5:调用小程序云函数,通过scheme码打开小程序;
优点:(1).参考可动态配置;(2).服务端提供接口更为稳健,scheme码可以存储数据库;
缺点:需要后端同学配合提供获取小程序scheme码的接口;
二、其他浏览器环境
在其他浏览器中,H5页面通过小程序URL Scheme码唤起,其核心代码实现为:
<wx-open-launch-weapp id="launch-btn" username="小程序原始账号 ID(gh_ 开头的)" path="要跳转到的页面路径"> <!-- replace -->
<template>
<button style="width: 200px; height: 45px; text-align: center; font-size: 17px; display: block; margin: 0 auto; padding: 8px 24px; border: none; border-radius: 4px; background-color: #07c160; color:#fff;">打开小程序</button>
</template>
</wx-open-launch-weapp>
wx-open-launch-weapp为微信官方提供的一个可跳转指定小程序的按钮。
三、注意事项(踩过的坑)
1.个人账号不可以实现,必须为已认证的非个人主体的小程序;
2.已认证的非个人主体的小程序,生成URL Scheme码的入口:微信管理后台-工具;
3.如使用云函数,需要配置开通了静态网站托管的云开发环境 ID;
4.iOS在浏览器可以直接使用 weixin://dl/business/?t= *TICKET* 唤起小程序,安卓不可以,必须通过 location.href 的形式;
详细代码实现我就不展示了,官方有明确的说明文档,大家也可以参考示例: https://postpay-2g5hm2oxbbb721a4-1258211818.tcloudbaseapp.com/jump-mp.html。
以上,即为H5页面跳转微信小程序总结,欢迎一起交流学习~