137-3385-8848(同微信)

最新通过小程序获取群名称ID代码开发解读

2022-04-21 管理员

  最新消息,hi商学院讯最近微信小程序除了新的规则,就是可以获得群ID和群名称,不过很多人在实际操作当中,却发现群名称不能获得,下面hi商学院记者告诉你微信小程序开发教程之群名称获取代码解读。

  微信宣布:「为了更好的针对群场景提供个性化服务,当用户在群聊中点击小程序分享卡片时,小程序支持开发者获取群 ID 和群名称」。但随后没多久,发现小程序只返回了群 ID,并没有给我们群名。现在,终于有方法可以显示群名称啦!

  直到现在,网上还可以看到很多「开发者可以获取群名称」这样的新闻。在微信刚宣布的时候确实同时返回了群 ID 和 群名称,但随后就只能获取到群 ID 了。估计会有很多开发者跟我一样被文章误导了,还以为是自己代码有问题。

  至于微信为什么这么做,官方也作出了解释:

  这就导致了,目前很多和群关联的小程序,一进去就要设置群备注的尴尬现象。

  为了保护用户的隐私,同时满足开发的需求,微信需要找到一种获取不到,但又允许展示的方法。

  现在微信找到方法了。

  下面我们看看如何在小程序里面显示群名称。

  获取群 ID

  显示群名的前提是,已经获取到了该群的群 ID。要是你之前已经对获取群 ID 有所了解,可以直接跳到后面看。

  我们通过将小程序转发到群里,获取到对应群的群 ID。

  首先,需要设置显示当前页面的转发按钮,转发后返回 ShareTicket,有了它才能去获取群 ID:

  wx.showShareMenu({

  withShareTicket: true

  })

  在代码里面添加 onShareAppMessage 方法,它是用来控制转发功能的。转发成功后,拿到 ShareTicket,再调用 wx.getShareInfo 获取转发目标的信息。代码如下:

  onShareAppMessage: function () {

  var that = this

  return {

  title: "转发标题",

  path: '页面路径',

  success(res) {

  wx.getShareInfo({

  shareTicket: res.shareTickets[0],

  success(res) {

  console.log(res.encryptedData)

  console.log(res.iv)

  // 后台解密,获取 openGId

  }

  })

  }

  }

  }

  和 wx.getUserInfo 一样,微信给了我们一段加密的数据,加密的方式也是一样的,后台可以用同一段代码进行解密。解密后的格式如下:

  {

  "openGId": "xxxxxxxx",

  "watermark": {

  "appid": "xxxxxxxx",

  "timestamp": 1499841984

  }

  }

  openGId 就是我们要的群 ID 了,把它保存下来。

  显示群名

  下面我们来到布局文件。

  小程序刚更新,多了一个新组件 open-data:

  用起来很简单,在要显示群名的地方,使用以下代码:

  将 openGId 传入,就会显示出群名称了。妥妥的。

  但这个东西是基础库 1.4.0 才有的东西,最好还是用 wx.getSystemInfo 获取到当前客户端的基础库版本,做一下低版本兼容,更多了解微信小程序开发教程。

上一篇:微信小程序开发教程:如何显示群名称
下一篇:微信小程序示例讲解:多列模式和省市区类型代
相关资讯 Releva ntnews
解决方案 Solutions
相关热点 Hot spot
郑州做排名中正确使用关键词优化的方法
  1. 我们的优势
  2. 我们的实力
  3. 选择我们的理由
咨询电话(微信同号)

137-3385-8848(同微信)

豫ICP备16014343号-1

Copyright © 2017-2022 版权所有 酷微科技 Rights Reserved

电话咨询 在线咨询 服务项目 SEO优化