微信小程序SDK的引入及配置

789 阅读3分钟

image.png

一、介绍

神策数据微信小程序 SDK,是一款用于微信小程序端的数据采集埋点 SDK。开发者将 SDK 集成到微信小程序项目中,通过配置或者在特定时机调用 SDK 提供的接口把采集到的用户数据上报到指定的服务端。

二、数据采集

数据采集是核心模块,主要负责准确、完整地通过埋点来采集数据。对于 SDK 而言,它需要在用户行为触发时(例如:小程序启动、浏览某个页面、点击了某个按钮等),按照既定的数据格式,将用户的行为进行数据化。根据采集方式的不同,可以分为代码埋点、全埋点:

  • 代码埋点是指调用 SDK 提供的 track() 接口采集自定义事件;
  • 全埋点是指 SDK 通过代理 App、Page 和 Component 的生命周期函数与各个事件处理函数来实现预置事件(可在配置中开始或关闭)的采集;

三、数据上报

数据采集完毕,SDK则需要将数据上报到指定的服务端,流程如下:

image.png

  • 实时发送:将存储到缓存队列中的数据逐条读取和发送。后一条数据只有在前一条数据发送完成后,才会被读取出来并发送,前一条数据发送完成后从队列中删除;

  • 批量发送:数据在一定时间或者缓存队列中积累到一定条数之后,通过 wx.request() 将所有的数据发送出去。请求发送失败时,发送失败的数据在下次发送时与新数据一同发送;请求发送成功时,会将缓存中已发送的数据删除;

四、使用

  • 从 GitHub 上获取微信小程序 SDK 源码
  • 将 sensorsdata.min.js 文件放入小程序项目中
  • 在 app.js 文件中通过 require()  引入 SDK
var sensors = require('./utils/sensorsdata.min.js');
 
// 配置初始化参数
sensors.setPara({
    name: 'sensors',
    server_url: '您的数据接收地址',
    // 全埋点控制开关
    autoTrack:{
        appLaunch: true, // 默认为 truefalse 则关闭 $MPLaunch 事件采集
        appShow: true, // 默认为 truefalse 则关闭 $MPShow 事件采集
        appHide: true, // 默认为 truefalse 则关闭 $MPHide 事件采集
        pageShow: true, // 默认为 truefalse 则关闭 $MPViewScreen 事件采集
        pageShare: true, // 默认为 truefalse 则关闭 $MPShare 事件采集
        mpClick: false, // 默认为 falsetrue 则开启 $MPClick 事件采集
        mpFavorite: true, // 默认为 truefalse 则关闭 $MPAddFavorites 事件采集
		pageLeave: false // 默认为 falsetrue 则开启 $MPPageLeave事件采集
    },
    // 自定义渠道追踪参数,如 source_channel: ["custom_param"]
    source_channel: [],
    // 是否允许控制台打印查看埋点数据(建议开启查看)
    show_log: true,
    // 是否允许修改 onShareAppMessage 里 return 的 path,用来增加(登录 ID,分享层级,当前的 path),在 app onShow 中自动获取这些参数来查看具体分享来源、层级等
    allow_amend_share_path: true
});
 
// 初始化 SDK
if(不使用 openid 作为匿名 ID){
    sensors.init();
}

// 如果需要使用 openid 作为匿名 ID,请单独获取 openid 之后调用 sensors.setOpenid() 方法
wx.request({
    url: '后端获取 OpenID 的请求',
    success: function(res){
        if(res.OpenID){
            sensors.setOpenid(res.OpenID); 
        }
    },
    complete: function(){
        // 如果获取 openid 失败,SDK 会以 UUID 作为匿名 ID 发数据
        sensors.init();
    }
});

在引入神策数据微信小程序 SDK 之后,通过调用 setPara() 接口进行 SDK 初始化参数的相关配置。常见的配置项如下:

  • server_url:数据接收地址,由神策提供,必须配置;
  • autoTrack:全埋点控制开关,可通过 appLaunch、appShow、appHide、pageShow、mpClick(非必要最好置为false)、pageShare、mpFavorite 分别控制对应全埋点事件的开启和关闭;
  • show_log:是否在控制台打印数据。
  • init():注意一定要init(),且要注意init()的时机。

五、总结

对于神策数据微信小程序 SDK 进行了简单的介绍,概述了 SDK 的基本功能,旨在让大家对于它有一个初步的了解。关于具体使用和实现原理等相关知识可参考:

微信小程序 SDK
数据模型