【小程序】判断用户是否是通过点击别人分享的小卡片进入页面

用户进入小程序的方法有很多种,可以通过好友分享、群聊分享、微信聊天主页面下拉或者发现栏小程序等等多种途径。但如果通过好友分享或者群聊分享打开的是某一个小程序页面,其页面可能无论如何操作都不能返回主页面,这时就需要在分享的页面中加入一个返回主页面的按钮,所以需要判断用户进入的渠道。

解决方法:

  1. 通过小程序场景值。对于小程序,可以在 App 的 onLaunch 和 onShow,或wx.getLaunchOptionsSync 中获取场景值。1007(单人聊天会话)1008(群聊会话中小程序)查看具体场景值,具体代码如下:
//app.js
App({
  onLaunch: function () {
    // 小程序初始化
  },
  onShow: function (options) {
    if (options.scene == 1007) {
      // 通过单人聊天会话分享进入
    }
    if (options.scene == 1008) {
      // 通过群聊会话分享进入
    }
    if (options.scene == 1001) {
      // 通过发现栏小程序进入
    }

    // ......
  },
  onHide: function () {
    // 小程序隐藏
  }
})

一般场景值是不会在onLaunch()方法中判断,其原因是onLaunch方法是小程序初始化完成时触发,全局只触发一次。当其返回退出还是点击右上角的按钮退出,小程序还是在微信后台运行除非用户手动关闭微信。所以当后台运行的情况下用户再次打开小程序时onLaunch()方法是不会运行的。

  1. 在分享的时候添加某些特定的字段作为参数,在进入页面的onLoad()方法中获取所有的参数,如果有该特定参数,则是分享进入。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 14,732评论 0 15
  • 小程序 基本知识 项目文件 JSON 配置 小程序配置 app.json app.json 是对当前小程序的全局配...
    勇敢的_心_阅读 5,206评论 0 6
  • 1.小程序起步 (1)点击https://mp.weixin.qq.com/wxopen/waregister?a...
    GXW_Lyon阅读 8,730评论 0 0
  • 已连载结束 一、《东汉小兵》(原名:《我是东汉的一个小兵,关于吕布与貂蝉的那些事请问我》) 作者:搬砖师爷 连载...
    小月同学阅读 3,184评论 3 0
  • 下午和一对儿已经领证儿的人一起吃了火锅。 看着他们,想聊聊爱情。 做完sem我和他老婆匆匆赶到海底捞,那时,他已经...
    杜烦人阅读 669评论 0 0