群用户通过微信小程序可以更好地协作了

简介:   今天,小程序向开发者开放了群ID的接口能力。简单地说,就是当你把小程序分享在群聊中,被点击后开发者可获取群ID和群名称,也方便更好地针对群场景提供个性化服务。不同的群有各自的群ID,那么这个新能力开发者该怎么使用? 群用户间可以更好地协作大家都知道,小程序可以方便地在群聊中分享,但开发者难以识别不同用户的点击路径。

  今天,小程序向开发者开放了群ID的接口能力。简单地说,就是当你把小程序分享在群聊中,被点击后开发者可获取群ID和群名称,也方便更好地针对群场景提供个性化服务。不同的群有各自的群ID,那么这个新能力开发者该怎么使用?

群用户间可以更好地协作
大家都知道,小程序可以方便地在群聊中分享,但开发者难以识别不同用户的点击路径。

现在,通过最新的接口能力,开发者可以通过群ID判断用户是否来自同一个微信群,同一个群内的用户之间可以更好地使用小程序进行协作,例如共同编辑文档、协同合作、共同点餐等等。

提供更个性化的服务

通过不同的群ID,开发者可以针对各个微信群提供更个性化的服务和内容,满足不同用户的多样需求。

 

onShareAppMessage

在 Page 中定义 onShareAppMessage 函数,设置该页面的分享信息。

  • 只有定义了此事件处理函数,右上角菜单才会显示 “分享” 按钮
  • 用户点击分享按钮的时候会调用
  • 此事件需要 return 一个 Object,用于自定义分享内容

自定义分享字段

字段 说明 默认值 最低版本
title 分享标题 当前小程序名称  
path 分享路径 当前页面 path ,必须是以 / 开头的完整路径  
success 分享成功的回调函数   1.1.0
fail 分享失败的回调函数   1.1.0
complete 分享结束的回调函数(分享成功、失败都会执行   1.1.0

回调结果:

回调类型 errMsg 说明
success shareAppMessage:ok 分享成功
fail shareAppMessage:fail cancel 用户取消分享
fail shareAppMessage:fail (detail message) 分享失败,其中 detail message 为详细失败信息

success回调参数说明:

参数 类型 说明 最低版本
shareTickets Array String shareTicket 数组,每一项是一个 shareTicket ,对应一个分享对象 1.1.0

示例代码:

Page({
  onShareAppMessage: function () {
    return {
      title: '自定义分享标题', path: '/page/user?id=123', success: function(res) { // 分享成功 }, fail: function(res) { // 分享失败 } } } }) 

wx.showShareMenu(OBJECT)

基础库 1.1.0 开始支持,低版本需做兼容处理

显示当前页面的分享按钮

OBJECT参数说明:

参数 类型 必填 说明
withShareTicket Boolean 是否使用带 shareTicket 的分享详情
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.showShareMenu({
  withShareTicket: true
})

wx.hideShareMenu(OBJECT)

基础库 1.1.0 开始支持,低版本需做兼容处理

隐藏分享按钮

OBJECT参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.hideShareMenu()

wx.getShareInfo(OBJECT)

基础库 1.1.0 开始支持,低版本需做兼容处理

获取分享详细信息

OBJECT参数说明:

参数 类型 必填 说明
shareTicket String shareTicket
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

CALLBACK 参数说明:

参数 类型 说明
errMsg String 错误信息
roomTopic String 群名称
rawData String 不包括敏感信息的原始数据字符串,用于计算签名。
signature String 使用 sha1( rawData + sessionkey ) 得到字符串,用于校验分享信息,参考文档signature
encryptedData String 包括敏感数据在内的完整分享信息的加密数据,详细见加密数据解密算法
iv String 加密算法的初始向量,详细见加密数据解密算法

encryptedData 解密后为一个 JSON 结构,包含字段如下:

字段 说明
openGId 群对当前小程序的唯一 ID
roomTopic 群名称

获取更多分享信息

通常开发者希望分享出去的小程序被二次打开的时候能够获取到一些信息,例如群聊名字或者是群的标识。现在通过调用 wx.showShareMenu 并且设置 withShareTicket 为 true ,当用户将小程序分享到任一群聊之后,可以获取到此次分享的 shareTicket,此分享卡片在群聊中被其他用户打开时,可以在 App.onLaunch() 获取到另一个shareTicket。这两步获取到的 shareTicket 均可通过 wx.getShareInfo() 接口可以获取到相同的分享信息。

Bug & Tip

  1. tip: 分享图片不能自定义;会取当前页面,从顶部开始,高度为 80% 屏幕宽度的图像作为分享图片。
  2. tip: 分享的调试支持请查看 普通分享的调试支持 和 带 shareTicket 的分享
  3. tip: 只有分享到群聊中打开才可以获取到 shareTickets 返回值,单聊没有 shareTickets
  4. tip: shareTicket 仅在当前小程序生命周期内有效
目录
相关文章
|
7月前
|
存储 小程序 JavaScript
基于微信小程序的移动学习平台的设计与实现_kaic
基于微信小程序的移动学习平台的设计与实现_kaic
|
4月前
|
移动开发 前端开发 JavaScript
UniApp H5项目大揭秘:高效生成与扫描二维码的终极策略,让你的应用脱颖而出!
【8月更文挑战第3天】UniApp让开发者能以Vue.js构建跨平台应用。在H5项目中,通过第三方库如qrcodejs2可轻松生成二维码,代码简洁易集成;或用Canvas API获得更高灵活性。扫描方面,H5+ API适合App环境,而纯H5项目则需前端库加后端服务配合。不同方法各有优势,应按需选择以优化体验。
313 0
|
6月前
|
小程序 前端开发 JavaScript
微信小程序|小程序公考学习平台的设计与实现
微信小程序|小程序公考学习平台的设计与实现
|
7月前
|
缓存 小程序 前端开发
谈谈钉钉工作台的体验优化及技术思考
本文主要介绍本次体验优化专项的特点,产品能力体验升级背后的技术思考,以及技术视角优化的关键策略和结果。
|
7月前
|
小程序 数据库
【微信小程序7】云开发中实时聊天系统的实现方法
【微信小程序7】云开发中实时聊天系统的实现方法
137 0
|
7月前
|
小程序 前端开发 JavaScript
【经验分享】如何实现在支付宝小程序中开发营销组件
【经验分享】如何实现在支付宝小程序中开发营销组件
79 0
|
JSON 小程序 前端开发
微信小程序开发之会议OA首页后台数据交互(内带新知识点分享)
微信小程序开发之会议OA首页后台数据交互(内带新知识点分享)
114 0
视频交友源码开发搭建平台用户资料功能:小功能有大用处!
视频交友源码平台用户资料功能不仅仅对于视频交友平台是重要的,它对于很多源码搭建的平台都是非常重要的,这样的源码功能还有很多,我会为大家讲解,喜欢的可以留个关注来问我。
视频交友源码开发搭建平台用户资料功能:小功能有大用处!
|
前端开发 小程序
《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(2)
《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(2)
114 0
|
小程序 前端开发 JavaScript
《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(1)
《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(1)
141 0