小程序中服务器域名设置

  • 小程序 server_url (数据接收地址)需要在微信公众平台---开发---开发设置—服务器域名中配置;
  • 小程序中服务器域名必须使用 https 协议;


小程序分享的计算逻辑和规则

在 SDK 1.9版本加入了小程序的分享事件 $MPShare ,该事件在小程序中调用分享接口时触发。

$url_path 属性值会记录触发分享的页面地址。

$share_depth 属性值会记录分享的层级:A、B、C为三个不同的用户,若小程序一个页面依照 A -> B -> C 的顺序进行分享,则 A 的分享会被标记为1级分享,B 触发的分享会被标记为2级,C 则为3级分享。

其中,用户打开自己分享的页面是不会增加 $share_depth 的值。

若您希望在后续跟踪分享的效果,需要配置 allow_amend_share_path 为 true,这样神策会自动修改分享的path参数,path后面会新增参数包含distinct_id,分享次数,页面路径信息。在该分享页面被打开时,会自动解析到$MPLaunch 和 $MPShow 中。

获取 distinct_id

app.js

var sa = require('./utils/sensorsdata.min.js');
sa.setPara({
	name: 'sensors',
	server_url: '数据接收地址'
});
sa.init();
sa.store.getDistinctId()
JS

批量发送数据配置

  1. 可配置是否批量发送数据 batch_send:true ;默认情况下,会每隔 6s 或者每采集 6 条数据后合并发送一次;
  2. 可配置使用批量发送数据,且可配置批量发送数据的时间间隔或条数 batch_send : { send_timeout : 5000, max_length : 20 };
  3. 使用批量发送的话,需要升级到神策 1.11 以上(后端增加 _track_id 功能);
  4. 批量发送中有一个优化,如果是 $MPLaunch 事件会直接发送,不会等待,因为考虑到会有较多用户打开就关闭小程序,甚至永远不来,如果使用等待 6s 的批量发送策略,会导致数据丢失,跟其他统计工具对不上。

预置事件添加自定义属性配置

  1. 如果是添加不需要延迟获取的属性,可以参考文档预置事件设置自定义属性中描述的方案添加。
  2. 如果是需要延迟才能获取的属性,首先需要关闭 autoTrack 对应的预置事件,然后手动去发送。
    • 如果不需要采集预置事件的预置属性,可以通过 track 方法发送个对应的预置事件,加延迟的属性就可以(建议使用此方案)
    • 如果需要采集预置事件的预置属性,需要在相应的生命周期函数中调用如下方法(预置事件 $MPViewScreen $MPShare 设置自定义属性不支持这种方案 )

app.js

//引入文件并完成初始化
var sa = require('./utils/sensorsdata.min.js');
sa.setPara({
	name: 'sensors',
	server_url: '数据接收地址'
});
sa.init()
App({
	onLaunch : function(options){
		// $MPLaunch 事件增加自定义属性
		sa.quick('appLaunch', options, {
			'属性名' : '延迟获取到的属性值'
		});
	},
	onShow : function(options){
		// $MPShow 事件增加自定义属性
		sa.quick('appShow', options, {
			'属性名' : '延迟获取到的属性值'
		});
	},
	onHide : function(){
		// $MPHide 事件增加自定义属性
			sa.quick('appHide', {
				'属性名' : '延迟获取到的属性值'
		});
	}
});
JS

1.13.6 版本 SDK 预置事件采集说明

1.13.6 及以后版本支持非插件模式下用 Component 作为页面构造器时候的,页面浏览自动采集功能,包括以下两种情况

  1. 原生小程序直接使用 Component() 作为页面构造器
  2. 框架使用 Component() 作为页面构造器,包括 Taro,Uniapp,wepy2