最近比较流行的答题小程序通常会有这么一个功能,分享到群增加答题次数,分享到好友无效,那么问题来了,我们如何能够判断用户分享到的是群还是好友呢?

通过查找API文档我发现会有这个一个东西withShareTicket 通过这个来判断是否分享到的是群还是好友,想要获取到这个需要这onShow方法里填加一个东西

//设置分享获取shareTicketwx.showShareMenu({withShareTicket: true,})

只有设置了这个等于true才能够获取到群信息。但是问题又来了IOS系统和Android系统的判断方式是不一样的,我来说一下他们两个的区别:

这个函数作用是你在分享到微信群之后可以获取shareTickets

通过wx.getShareInfo()shareTickets,可以获取到分享群的加密过的信息。

这里要注意下如果分享的是个人android仍然可以获取到shareTickets

ios分享到个人是获取不到shareTickets的。

如果是ios你可以在直接用if()判断shareTickets是否存在判断是否转发的是微信群。

如果是android你要执行wx.getShareInfo()函数,如果是微信群就会调用success,不是微信群就会调用fail

必须调用wx.getshareInfo()获取群信息 包括 iv、encryptedData(换取openGId)

现在上一下完整的代码:

    //分享onShareAppMessage: function (res) {let that = thisreturn {title: '分享的标题',path: '分享的页面链接',success: function (res) {//getSystemInfo是为了获取当前设备信息,判断是android还是ios,如果是android//还需要调用wx.getShareInfo(),只有当成功回调才是转发群,ios就只需判断shareTickets//获取用户设备信息wx.getSystemInfo({success: function (d) {console.log(d);//判断用户手机是IOS还是Androidif (d.platform == 'android') {wx.getShareInfo({//获取群详细信息shareTicket: res.shareTickets,success: function (res) {//这里写你分享到群之后要做的事情,比如增加次数什么的},fail: function (res) {//这个方法就是分享到的是好友,给一个提示wx.showModal({title: '提示',content: '分享好友无效,请分享群',success: function (res) {if (res.confirm) {console.log('用户点击确定')} else if (res.cancel) {console.log('用户点击取消')}}})}})}if (d.platform == 'ios') {//如果用户的设备是IOSif (res.shareTickets != undefined) {console.log("分享的是群");wx.getShareInfo({shareTicket: res.shareTickets,success: function (res) {//分享到群之后你要做的事情}})} else {//分享到个人要做的事情,我给的是一个提示console.log("分享的是个人");wx.showModal({title: '提示',content: '分享好友无效,请分享群',success: function (res) {if (res.confirm) {console.log('用户点击确定')} else if (res.cancel) {console.log('用户点击取消')}}})}}},fail: function (res) {}})}}},

这里说一下分享到群的话,需要把返回的 iv,encryptedData,传给后台换取openGId(群ID)。

好了,今天就整理这么多了,感觉我的判断逻辑不是很严谨,欢迎来指出,大家一块学习。

想要获得更多资料的  请微信搜索公众号 【热血科技】,关注一下即可。

微信小程序判断分享的是群还是好友相关推荐

  1. plsql developer无监听程序_微信小程序支持分享到朋友圈啦!技术解读跟我来

    千呼万唤始出来!微信小程序页面分享到朋友圈的功能,终于在安卓系统灰度测试了!目前只在安卓系统!只在安卓系统!只在安卓系统!iOS系统还没有办法体验. 首先,我们看一下官方文档的描述,解读一下小程序分享 ...

  2. 微信小程序封装分享与分销功能

    在微信小程序中,可以很简单的分享一个页面,比微信H5简单多了,然而,分享出去的页面(也叫卡片),打开后只是一个单独的页面,没有底部导航栏,点击返回按钮的时候就直接退出小程序了.如果需要去到首页,还必须 ...

  3. 微信小程序绘制分享图

    微信小程序绘制分享图例子: demo下载地址:https://gitee.com/v-Xie/wxCanvasShar 大致代码会再以下说明 实际开发项目: 基础知识点: 了解canvas基础知识 w ...

  4. 微信小程序之分享功能

    一.介绍 微信小程序的分享功能可以分享页面给朋友或群聊,但是不能分享到朋友圈,需要分享朋友圈的话,可以在小程序内设计一个分享页面,利用小程序提供的canvas把小程序码绘制到分享图里保存到本地分享到朋 ...

  5. 微信小程序:分享及其好友代付款

    微信小程序:分享及其好友代付款 先贴一个微信的官方通告 大概的意思是说从2018年10月后的分享功能,取消了success,fail,complete三个函数的功能,用户分享必须是用户主动触发 首先还 ...

  6. android分享朋友圈功能,微信小程序实现分享至朋友圈的功能来啦

    微信小程序「分享至朋友圈」能力,终于来了!(之前,我相信大部分微信小程序的开发者都是用"分享卡片"的形式,手动调用wx.createCanvasContext生成一张图片,让用户生 ...

  7. 微信小程序/uniapp分享功能-代码封装与使用(分享好友或朋友圈-两种方式)

    官方地址:分享 | uni-app官网 一.分享朋友圈-详见uni-app官方文档 注意:更多注意事项见uni-app文档  结果展示: 二.分享好友或者朋友圈-详见微信开放文档 先展示:  实现分享 ...

  8. 微信小程序如何分享到朋友圈

    微信小程序之前的分享是不支持直接分享到朋友圈的,之前分享的处理方式一般都是通过canvas生成分享海报,然后将生成的海报图发送到朋友圈中来达到分享的目的.不过从基础库 2.11.3 开始,分享朋友圈的 ...

  9. 微信小程序---判断苹果11及以上型号手机

    微信小程序-判断苹果11及以上型号手机 在app,js全局中 onLaunch: function () {var t = this;wx.getSystemInfo({success: functi ...

最新文章

  1. RSA选用小公钥指数(e=3)真的不安全吗?
  2. 在流程梳理的过程中,OA工作组应采用国际先进方法
  3. iOS推送小结--swift语言
  4. 养殖者运送猫狗过河问题(面向对象)
  5. 用java正则表达式验证字符串(邮箱与网址)
  6. job sql 定时执行exe_SQL Server定时作业job的设置方法(转)
  7. 最全 JavaScript Array 方法 详解
  8. 用Delphi编写ASP的ActiveX
  9. java多线程队列_java多线程消费者生产者模式(BlockingQueue 通过阻塞队列实现)
  10. Sql Server远程连接
  11. Java面试--Structs
  12. html5中header的作用,HTML5中的header标签是什么意思?HTML5中header标签具体使用方法你知道吗?...
  13. C语言一维数组、二维数组传参
  14. Python爬取王一博高清图片,竟然如此简单!
  15. dfuse Search 是所有 EOSIO 开发者的必备工具
  16. Node.js Web 模块(客户端 服务端实例)
  17. b、B、kb、kB单位
  18. Android应用开发详解【郭宏志】(奋斗之小鸟)_PDF 电子书
  19. 论文结尾参考文献形式
  20. .net5 WebAPI中搭建WebSocket服务端

热门文章

  1. Tesseract字体识别 及 jTessBoxEditor工具进行训练 及 Java API实现字体识别
  2. 什么是挣值管理?(重点)
  3. 知乎使用爬虫时报10001:请求参数异常,请升级客户端后重试 怎么搞?
  4. 金融业务对服务器的需求是什么
  5. 【智联招聘年薪65万售前】年薪65万IT售前招聘要求深层解读,你是否合适?
  6. 咖说 | 匿名的「N号房」:数字货币是否应当拥抱监管?
  7. 美创科技首届渠道高峰论坛| 两大分论坛亮点汇聚
  8. 【Blender】基础物体建模(1)
  9. matlab线性相位滤波器设计,关于第二类线性相位滤波器问题分析
  10. 互联网晚报 |10/25 星期二| 腾讯回应中国移动入股传闻;国内汽柴油价格每吨分别提高185元和175元;比亚迪回应特斯拉降价...