微信网页开发的 wx-open-launch-app
# 复现链接:
wx.config 开启 debug:
wx.config 未开启 debug:
# 复现步骤:
- 打开页面
- 点击底部的下载按钮
# 期望
在不需要开启 debug 模式下,点击按钮后,如未安装应用出现提示,安装了则拉起app
# 实际表现
真机中,IOS 和 安卓均出现(具体是 IPhone X 和 安卓7,8)
- `wx.config`未开启 debug的链接,打开底部绿色的控制台,出现错误,并且未执行按钮的 ready 回调(看代码 log 内容)。错误截图如下:
- `wx.config`开启 debug的链接,打开底部绿色的控制台,未出现错误,执行了按钮的 ready 回调(看代码 log 内容)。点击下载按钮表现正常。
在模拟器中
- 不管开不开 debug,表现都正常。
// 版本信息
// vue 2.x 示例代码;
// jssdk 1.6.0 http://res.wx.qq.com/open/js/jweixin-1.6.0.js、/
export default Vue.extend({
data() {
return {
isWexin: navigator.userAgent.toLowerCase().includes('micromessenger'),
// extinfo, appid 等其它参数
}
},
mounted() {
this.init()
},
methods: {
async init() {
// 接口获取 ticket 等认证参数 ...
wx.config({
// debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印
appId: this.wxPublicAppid, // 必填,公众号的唯一标识
timestamp, // 必填,生成签名的时间戳
nonceStr, // 必填,生成签名的随机串
signature, // 必填,签名
jsApiList: ['onMenuShareAppMessage'], // 必填,需要使用的JS接口列表
openTagList: this.openTagList // 可选,需要使用的开放标签列表,例如['wx-open-launch-app']
})
// eslint-disable-next-line
wx.ready(() => {
const btn = document.getElementById('btn')
console.log('ready?', this.openTagList, btn)
if (btn) {
btn.addEventListener('ready', function (e) {
console.log('btn ready') // 未开启 debug 时,真机不会打印;开启则正常打印
})
btn.addEventListener('launch', function (e) {
console.log('launch')
})
btn.addEventListener('error', (e: any) => {
console.log('error', e.detail)
this.openFail = true
})
}
})
}
}
})
抱歉,目前有故障,正在修复中,应该有很多已经恢复了
现在是 21:07,预计半小时后全部解决
开头的 2 个链接,都是放同样的代码。所以可以排除代码问题。我觉得更大的可能性是 jssdk 这边出了问题。欢迎各位大佬看看还有没有什么信息需要补充的
借楼问下楼主: 你们的app使用这个标签打开了吗?能不能请教下你们怎么设置的?APP是否安装了微信的opensdk?
同问,打开小程序不行,也是只有部分手机提示这个错误
同样的问题,打开App和小程序,都不行
遇到了同样的问题!
同求,一样的问题。只在特定的账号和特定的机型会发生,同一个账号不同机型或者同一个机型不同账号都不会发生这样的状况