API层面
onShareAppMessage
小程序如果惦念对外分享,必须在 page 里面界说 onShareAppMessage 函数,来配置页面分享转发相干的信息
只有界说了此事件处理函数,右上比赛菜单才会显示 “转发” 按钮,用户点击转发按钮的时分会见调用
此事件需要 return 一个 Object,用于自定义转发内容一个页面可能会有大都个分享,可以由插入的参数options来判定具体是由哪个位置进行分享,从而做不同的逻辑判断
return对象的返回函数:
如果界说了该事件,又不惦念通过页面menu转发,可以经过 hideShareMenu来潜藏掉
注意事项:
转发后不添加imageUrl的话,将截图作为转发的默认图片
from 字段可以通过在转发成功后调取的 success、complete 来进行对 menu 和 button 的不同操作
如果有携带 shareTicket 值,会面在 success 回调发生,返回结果在 shareTickets 字段中,是一个数组,可以做一定处理
wx.showShareMenu
一般是用来配置相干的参数,常见的假如 withShareTicket ,用它来获得群信息,群的相关标示
wx.showShareMenu({
withShareTicket: true
})
wx.hideShareMenu
躲藏menu级别的转发功用,但是button中还存在着转发
如果先设置 showShareMenu ,并且配置了 withShareTicket,再用 hideShareMenu 办法,通过按钮转发,照样能获得 shareTicket,如下:
wx.showShareMenu({
withShareTicket: true
})
wx.hideShareMenu({
})
wx.updateShareMenu
更新shareMenu信息需要用update操作哦,这里需要留神下,一般都是见面更新 withShareTicket 属性wx.getShareInfo
在拿到了shareTicket信息后,可以由此API获得转发详细信息
wx.getShareInfo({
shareTicket: res.shareTickets[0],
success: …
fail: …
})
相关回调的参数
{
errMsg: “getShareInfo:ok”,
iv: “gRHeFU+Nhr36RmladCXnRQ==”,
encryptedData: “IQ/RwZLeQFUGuxv0bBfOrL/KLnXO+bxcyCBru5lB92FkHIg8ae…7TnHwU+rqgerFKvpvS5JbFyh+9liUqyb2bk6/LETYQ+h/FQ==”
}
由iv和encryptedData进行解密,可以拿到openGId的值为当前群对当前小程序的唯一值。