2022年了这个问题还在。。。
IOS支付成功后,返回小程序onShow参数问题- 当前 Bug 的表现(可附上截图) 小程序在app.onShow()中判断打开小程序来源和获取options.referrerInfo参数。当第一次从其他小程序跳转过来,ios和安卓都能在app.onShow()中获取到来源参数,但是吊起微信支付,支付成功后会显示微信的支付页面,点击完成后关闭支付成功页面,重新显示小程序,此时会触发app.onShow()事件,安卓中能正常获取options.referrerInfo参数(与第一次跳转过来参数一致),但是IOS中options.referrerInfo为空,导致程序识别来源参数错误,影响流程 - 预期表现 IOS端 [图片] [图片] 安卓端: [图片] [图片] - 提供一个最简复现 Demo app.js [代码] [代码][代码]// 启动/从后台进入前台[代码][代码] [代码][代码]onShow: [代码][代码]function[代码] [代码](options) {[代码][代码] [代码][代码]let that = [代码][代码]this[代码][代码];[代码] [代码] [代码][代码]let scene = options.scene; [代码][代码]//启动场景[代码][代码] [代码][代码]that.globalData.scene = scene;[代码][代码] [代码][代码]console.warn([代码][代码]"app.onshow:启动场景:"[代码][代码],scene);[代码][代码] [代码][代码]console.warn([代码][代码]"app.onshow:options:"[代码][代码], options);[代码][代码]}[代码] 私以为安卓和ios端返回结果应该一致,否则需要开发者专门对此种情况做修改,影响开发效率(况且这只是偶然发现,官方并没有提示和说明),而且不符合微信全平台运行的生态模式,是否验证一下是否是bug,然后修复呢~谢谢
2022-03-14