小程序
小游戏
企业微信
微信支付
扫描小程序码分享
supportedMaterials 属性配置后,在应用onshow生命周期里能获取到素材相关参数。
情况一:从素材里用微信小程序打开,在onshow里获取到素材相关参数和场景值。
情况二:操作情况一后,我从小程序切换到别的界面比如切换到支付宝,再切回小程序,此时也触发小程序的onshow,获取到一样的素材相关参数和场景值。
如何区别是从聊天素材打开的小程序(区别情况一和情况二),而不是非聊天素材打开的小程序?
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
在情况一和情况二中,您可以在 onShow 事件中获取到当前小程序的场景值(即 options.scene)。以下是一些常见的场景值和对应的含义:
onShow
options.scene
•1011:从扫描二维码进入小程序
1011
•1014:从手机相册选择文件后打开小程序
1014
•1047:从聊天顶部小程序入口(右上角 "+")打开小程序
1047
•1089:从微信聊天主界面长按小程序图标进入小程序
1089
•1090:从聊天顶部搜索框搜索并打开小程序
1090
对于情况一,当从聊天素材里用微信小程序打开时,options.scene 的值可能是 1047 或其他聊天相关的场景值。您可以通过判断 options.scene 是否为聊天相关的场景值,来确定是从聊天素材打开的小程序。
而对于情况二,当您从支付宝或其他界面切换回小程序时,虽然也会触发 onShow 事件,但 options.scene 的值可能是之前打开小程序时的场景值,并不代表当前的真实场景。因此,在情况二中,您无法通过 options.scene 来区分。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
场景值应该不一样吧
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
在情况一和情况二中,您可以在
onShow
事件中获取到当前小程序的场景值(即options.scene
)。以下是一些常见的场景值和对应的含义:•
1011
:从扫描二维码进入小程序•
1014
:从手机相册选择文件后打开小程序•
1047
:从聊天顶部小程序入口(右上角 "+")打开小程序•
1089
:从微信聊天主界面长按小程序图标进入小程序•
1090
:从聊天顶部搜索框搜索并打开小程序对于情况一,当从聊天素材里用微信小程序打开时,
options.scene
的值可能是1047
或其他聊天相关的场景值。您可以通过判断options.scene
是否为聊天相关的场景值,来确定是从聊天素材打开的小程序。而对于情况二,当您从支付宝或其他界面切换回小程序时,虽然也会触发
onShow
事件,但options.scene
的值可能是之前打开小程序时的场景值,并不代表当前的真实场景。因此,在情况二中,您无法通过options.scene
来区分。场景值应该不一样吧