小程序如何区分转发好友和转发群

知晓程序员,专注微信小程序开发的程序员!

前言:群内隔段时间就有同学问,小程序的转发,是否可以区分转发给好友,还是转发给微信群,今天给大家说说如何区分。顺便说一下限群成员可见功能如何实现~

这个问题,要区分一下分享之前和分享之后就好办了。

当小程序分享之前,小程序无法区分到底是分享给了好友,还是分享给了微信群。也就是说,你想在分享之前去做些事情,这是不可以的,做不到~

分享之后,有间接的办法来知道小程序卡片分享的是好友还是群,先看一下截图:

(重要通知小程序)

我们今天主要来说说,分享后是如何对好友卡片和群卡片的。实现思路:通过场景值来判断~

(小程序场景值)

小程序官方给的场景值,已经对单人聊天会话群聊天会话做了区分,如上图。

我们可以在app.js里面的onLaunch方法或者onShow方法获取到场景值:

拿到值之后,你可以保存全局变量,或者写入本地缓存,在相应的page.js里面去做判断,如果是群聊,显示群聊界面,如果是私聊,显示私聊界面。

上面只说了如何区分群聊还是私聊,那么仅限某个群可见这功能又如何实现呢?

思路:分享小程序卡片之后,获取到群id,当群用户点击群内小程序卡片时,也会获取一个群id,这两个群id相同,则表明是同一个群;没有获取到群id,表明不是从群聊中打开小程序卡片;两个群id不同,则表明不是同一个群~

上面已经说了,有两种场景可以获取群id

第一:小程序卡片分享到群聊中。分享完成之后,有个分享成功的回调方法,可以在此方法中获取到shareTickets

拿到shareTickets之后,可以调用wx.getShareInfo,获取解密gid会用到的向量和加密值,传给服务端进行解密(小程序中所有的解密操作,都放在服务端进行)。

注:上面成功回调时,res.shareTickets是个list,因为分享给好友和群的时候,可以多选,最多选9项~

第二:从群聊中打开小程序卡片时。从群中打开小程序卡片,会在app.js里面的onLaunch方法和onShow方法中获取到shareTickets

拿到shareTickets之后,去服务端解密~

相信大家也有看到过,有些小程序做了群排行榜功能吧。实现方式,也是同样的道理~

原文发布于微信公众号 - 知晓程序员(bainaweb)

原文发表时间:2018-03-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大前端开发

微信小程序实例直播讲解(1):一个汽车爱好者小程序

最近在我们的《前端精修社》微信群里聊得兴起,给初学小程序开发的群友做了个直播,介绍了一下我自己之前开发的一个小程序《爱摸车》的源码,该小程序的功能不算复杂,但是...

682
来自专栏安智客

[分享]Android 安全白皮书

提到终端安全,不得不说的是Android,Android的安全机制在以前更多是系统层门、上层软件方面,随着安全形式的越来越严峻,更多的攻击针对于...

2167
来自专栏黑白安全

14亿邮箱泄露密码明文信息查询网站惊现网络

近期,网络上出现了一个14亿邮箱密码泄露信息查询网站:http://dumpedlqezarfife.onion.lu/,访问网站后,可以按照用户名或邮箱地址来...

1254
来自专栏知晓程序

这个微信里的「稍后阅读」,帮你一键收集好文章

小程序体验师:陈丹阳 现在,各种内容资源越来越丰富,比如阅读类 app 中的精美文章、公众号推送的独特见解……

371
来自专栏Crossin的编程教室

【Python 第46课】 查天气(4)

明天俺就要出发了,今天赶在睡觉前来个深夜档。 这一课算是“查天气”程序的附加内容。没有这一课,你也查到天气了。但了解一下城市代码的抓取过程,会对网页抓取有更深的...

2968
来自专栏极乐技术社区

『教程』来自小程序开发者的实例教程第二期

最近全国各地很多城市都出现了高温天气,极乐蜀黍温馨提醒,高温天气小心热感冒,各位程序猿们这样的天气空调冷饮西瓜和电脑键盘代码更配哟~ 这周继续为大家带来的是来自...

17910
来自专栏知晓程序

重新安装微信后,小程序还在吗?| 小程序问答 #50

很多人换手机、重置手机后,都需要重新安装微信。那么,微信被重置后,小程序究竟还在不在呢?

1213
来自专栏架构师之路

feed留,单聊群聊,系统通知,状态同步,到底是推还是拉?

可以理解为一个发布订阅业务,典型业务是微博(朋友圈)。你关注了姚晨的微博,姚晨发布了消息,你的主页能看到她最新发布的消息,这个场景是推送,还是拉取呢?

1053
来自专栏HBStream流媒体与音视频技术

H264音视频直播系统 服务器端+客户端源码 可用于视频聊天、视频会议

4965
来自专栏编程软文

小程序二维码和小程序带参数二维码生成

3164

扫码关注云+社区