微信公众号或H5打开小程序的方式
1、使用微信开放标签 wx-open-launch-weapp
微信开放标签有最低的微信版本要求,以及最低的系统版本要求。
- 微信版本要求为:7.0.12及以上
- 系统版本要求为:iOS 10.3及以上、Android 5.0及以上
使用步骤:
微信开放标签使用步骤与微信JS-SDK类似,也需要引入JS文件,初始化jssdk配置等步骤。如果是公众号身份的网页,需要绑定安全域名;如果是使用小程序网页,则不需绑定安全域名可直接使用。
-
绑定域名
登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。 -
引入JS文件,初始化jssdk配置
在需要调用JS接口的页面引入如下JS文件:http://res.wx.qq.com/open/js/jweixin-1.6.0.js(支持https)或http://res2.wx.qq.com/open/js/jweixin-1.6.0.js -
通过config接口注入权限验证配置并申请所需开放标签
与使用JS-SDK配置方式相同,所有需要使用开放标签的页面必须先注入配置信息,并通过openTagList字段申请所需要的开放标签,否则将无法使用(同一个url仅需调用一次)。开放标签的申请和JS接口的申请相互独立,因此是可以同时申请的。
wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [], // 必填,需要使用的JS接口列表
openTagList: [] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app']
});
- 通过ready接口处理成功验证
wx.ready(function () {
// config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中
});
- 通过error接口处理失败验证
wx.error(function (res) {
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名
});
使用说明
跳转小程序:wx-open-launch-weapp
用于页面中提供一个可跳转指定小程序的按钮。使用此标签后,用户需在网页内点击标签按钮方可跳转小程序。H5通过开放标签打开小程序的场景值为1167。
开放对象
- 已认证的服务号,服务号绑定“JS接口安全域名”下的网页可使用此标签跳转任意合法合规的小程序。
- 已认证的非个人主体的小程序,使用小程序云开发的静态网站托管绑定的域名下的网页,可以使用此标签跳转任意合法合规的小程序。
若跳转时出现以下页面,表示网页绑定的服务号或小程序无权限,请检查是否符合上述开放对象条件。
vue使用步骤
- vue根目录 引入
- template中写入开放标签
注意:开放标签属于自定义标签,vue会给予未知标签警告,可通过配置Vue.config.ignoredElemnets来忽略vue对开放标签的检查。
<wx-open-launch-weapp
username="gh_小程序原始id"
path="pages/index/index"
id="open-launch"
@launch="onLaunch"
@error="onError">
<script type="text/wxtag-template">
<style>
.btn {
width: 92px;
height: 92px;
}
</style>
<div class="btn"> 点开小程序</div>
</script>
</wx-open-launch-weapp>
- 对应script写入wx.config配置
wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [], // 必填,需要使用的JS接口列表
openTagList: ['wx-open-launch-weapp'] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app']
});
wx.ready(function () { })
- 配置main.js
// Vue.config.ignoredElements = ['wx-open-launch-weapp'];
Vue.config.ignoredElements = [...Vue.config.ignoredElements, 'wx-open-launch-weapp']
注意:本地运行和线上运行看不到效果,需要用开发者工具或手机真机调试才能看出效果
2、自定义菜单跳转
通过接口修改了菜单配置可通过接口配置发布菜单
3、回复a标签消息打开小程序
可以在自动回复、关键词回复以及消息管理的消息回复中发送带如下格式的消息,用户点击消息后可以自动跳转到小程序。
其中data-miniprogram-appid是小程序的 appid,data-miniprogram-path是要跳转到的小程序页面。
4、模板消息推送小程序
需要配置消息模板
5、公众号图文消息嵌入小程序卡片
在公众号什么群发文章的内容中插入小程序。这里增加的小程序,也是需要事先做关联的。
操作步骤为:进入公众号后台。选择广告与服务-小程序管理-添加关联小程序
目前只找到这几种,大家还有什么别的方法可以再补充哈