公司名称 | 麦云科技 | |
MP帐号(邮箱) | weixinxcx@bizjia.com | |
开发者微信号 | qianqing2118351 | |
机型(如iPhone 6s plus) | ios系统都能重现 | |
操作系统(如iOS 9.3) | ios系统都能重现 | |
是否必现 | 是 | |
出现时间 | 2017-06-27 | |
操作路径(即如何操作可以复现该问题) | ||
打开小程序,进入某个页面,然后关闭小程序!在朋友圈或者群聊天里,长按二维码,识别小程序二维码 | ||
问题描述(具体问题介绍) | ||
1、假设小程序首页为A,并在A页面的onLoad中检查options.scene,用于识别二维码的参数 2、打开小程序,进入A页面,从A页面跳转到B页面,然后让小程序进入后台 3、识别小程序二维码,假设这个二维码是跳转到C页面(我们自己定义的参数),这是唤醒小程序后,小程序依旧停留在B页面,并未跳转 我的想法是: 因为B类二维码接口统一跳转到首页(也就是A页面),然后在首页onLoad对options.scene做处理,进行逻辑处理! 但是当小程序在其他页面(也就是B页面)进去后台后,识别二维码直接唤醒的是B页面,而非首页,无法触发首页的onLoad 遇到这种问题该怎么处理,因为我们的二维码需求量大,所以只能用B类接口!!! | ||
问题截图(客户端问题界面截图) | ||
代码片段截图 | ||
麻烦提供一下小程序码
为什么你们获取scene是从options.scene中获取,而我是要把options.query序列化之后截取字符串之后才能获取
{"scene": 1047, "path": "pages/index/index", "query": "{scene=ryAooo1}"
奇怪
这个是首页的onload函数,但是小程序进入后台的时候,并不是在首页哦
onLoad: function (options) {
appInstance.getUserInfo(userInfo => {
// options.scene = '1%2C1007512%2C100%2C1018816%2C1018815'
// options.scene = '1%2C1008005%2C7%2C1021901%2C1018815'
if (options.scene) {
let scene = options.scene.split('%2C')
if (scene.length) {
if (scene[0] === '1' && scene.length === 5) {
let path = '/pages/message-detail/message-detail?bizSysNo=' + scene[1] + '&bizType=' + scene[2] + '&serverCompanySysNo=' + scene[4] + '&mangerSysNo=' + scene[3] + '&from=iOS'
wx.reLaunch({
url: path
})
}
}
} else {
this.login(userInfo);
}
});
}
同样关注
我也遇到了这种问题,急需腾讯官方答复