使用前,需要在小程序管理后台自定义分析中新建事件,配置好事件与字段名。
wx.reportAnalytics(eventName,data)
参数说明:eventName:事件名
data:上报的自定义数据。Key为配置的字段名,value为上报的数据
例子:
wx.reportAnalytics('purchase', {
price: 120,
color: 'red'
})
具体操作:
这是后台所需要的设置。
小程序中也是需要做开发的:
首先需要在分享的api哪里添加分享参数;
具体的就是需要在分享的页面url上添加一个参数,用来检测。这里我用的是’orgin=gemii’;
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
return util.openShare('【秒杀价¥' + this.data.dataParams.showPrice + '】 ' + this.data.dataParams.name, '/pages/buyer/secKill/index?scene=' + this.data.scene+'&orgin=gemii', this.data.dataParams.coverPhoto, rex => {
"use strict";
//console.log(rex)
})
},
在进入分享出来的页面时,需要把参数取出来:通过wx.reportAnalytics()这个api把数据上报给微信后台,然后登陆后台,查看数据分析->自定义分析就能看到数据。
实现:
第一就是打开小程序,把监测数据连接到当前页面的url上,然后通过分享出去;
第二就是小程序打开当前显示的页面,必须要设有分享事件;
第三就是小程序打开当前显示的页面,必须要有上报事件。
生成带有标识的专属小程序码,这里使用草料二维码生成器作为例子,
例:
这里第一个人用这个小程序码打开之后,点击分享按钮后,会把这个参数缀到分享链接后面,
后面我只要在分享的时候判断有没有这个“标识”,就可以决定带不带参的分享。
具体在小程序中的分享函数里面需要做个判断,在进入页面时做个判断
例:
Page({ data:{ orgin:null }, onLoad:function (options) { //判断是否带有标识,有则保存到data.orgin中;没有则不处理 if(options.orgin){ this.setData({ orgin:options.orgin }) } //... }, // ... onShareAppMessage:function () { // 定义path,分享页面路径,设定默认值 let path = 'pages/PDetail/detail?scene=' + this.data.scene; // 判断orgin是否有值,有则改变path if(this.data.orgin){ path = path +'&orgin='+this.data.orgin; } return { title: `¥${this.data.productItem.retailPrice} ${this.data.productItem.name}`, imageUrl: this.data.productItem.coverPhoto, path: path } } })
数据查看:
因为不是微信那边不是实时去统计的,建议以天为单位去统计数据。
总结:
通过这样的方式,我们就可以结合wx.getShareInfo这个api,加上授权后获取到的用户信息来确定某个群的某个用户打开了这个小程序。
数据配置成{groupID:null,userOpenid:null,userName:null,…}