在使用前,请先阅读数据模型的介绍。

在使用前,可先了解数据校验的介绍。

更新日志

1. 快应用集成 SDK

1.1. 下载 SDK

从 GitHub 上下载快应用 SDK sensorsdata.min.js;

1.2. 引入和配置 SDK

将 sensorsdata.min.js 放到项目中的某个目录下,在项目的 app.ux 中引入目录下的 sensorsdata.min.js ,然后调用 setPara() 方法设置初始化参数,必须在 onCreate 中调用 sensors.init(this) 方法完成初始化。

注意:sensors.init() 执行后才能执行其他方法,如 login 等方法如果在 init 之前调用,会存在队列中,等待 init 方法执行完再依次执行。

app.ux

import sensors from './sensorsdata.min.js';
sensors.setPara({
	name: 'sensors',
	server_url: '数据接收地址'
});

//必须传入this,不然在Page中无法引用sensors
export default {
	onCreate() {
		sensors.init(this);
	}
}
JS

2. 预置事件和属性

2.1. 预置事件

2.1.1. $AppStart(App 启动)事件

app.ux

export default {
	onCreate () {
		sensors.init(this);
		sensors.appLaunch();
	}
}
JS

2.1.2. $AppViewScreen(App 浏览页面)事件

// src下的页面
export default {
	onShow() {
		this.$app.sensors.pageShow();
	}
}
JS

2.2. $AppStart(App 启动)事件的预置属性

字段名称类型说明SDK 版本
$scene字符串启动场景(source.type)0.1.0
$source_package_name字符串来源包名(source.packageName)0.1.0
$brand字符串设备品牌0.1.0
$is_first_day布尔类型是否首日访问(从新用户第一次访问到当天的凌晨十二点之间的值都为真,之后为假,标识存在 storage 中)0.1.0
$is_first_time布尔类型是否首次访问,新用户首次触发这个事件标识为真0.1.0
$lib字符串SDK 类型0.1.0
$lib_version字符串SDK 版本0.1.0
$manufacturer字符串设备制造商0.1.0
$model字符串设备型号0.1.0
$os字符串操作系统0.1.0
$os_version字符串操作系统版本0.1.0
$screen_height数值屏幕高度0.1.0
$screen_width数值屏幕宽度0.1.0

2.3. $AppViewScreen(App 浏览页面)事件的预置属性

字段名称类型说明SDK 版本
$scene字符串启动场景(source.type)0.1.0
$source_package_name字符串来源包名(source.packageName)0.1.0
$url_path字符串页面路径(router.getState().path)0.1.0
$title字符串页面标题(router.getState().name)0.1.0
$brand字符串设备品牌0.1.0
$is_first_day布尔类型是否首日访问(从新用户第一次访问到当天的凌晨十二点之间的值都为真,之后为假,标识存在 storage 中)0.1.0
$lib字符串SDK 类型0.1.0
$lib_version字符串SDK 版本0.1.0
$manufacturer字符串设备制造商0.1.0
$model字符串设备型号0.1.0
$os字符串操作系统0.1.0
$os_version字符串操作系统版本0.1.0
$screen_height数值屏幕高度0.1.0
$screen_width数值屏幕宽度0.1.0

3. 标识用户

在进行任何埋点之前,都应当先确定如何标识用户。distinct_id 是神策用来标识用户的一段唯一的字符串。

在快应用中,会有下面 2 种 id

  1. 默认情况下,我们会生成一个随机数 uuid ,保存在本地缓存中,我们暂时称这个为 uuid 
  2. 数据库中保存的,用户真实 id 。我们暂时称为 "你们服务端分配给用户具体的登录 ID"

如果不做任何操作,快应用会使用 uuid 作为 distinct_id 。注意: uuid 在换了设备,或者删除快应用后,会重新生成

3.1. 修改匿名 ID

默认情况下,是把 uuid 作为 distinct_id 的。如果想使用其他匿名 id(比如你们自己生成的 uuid),可以用 identify(id,true) 方法来改变当前的 distinct_id。

app.ux

import sensors from './sensorsdata.min.js';
sensors.setPara(...);
sensors.identify('匿名ID', true);
JS

3.2. 用户关联

  1. 可以通过调用 login("userID") 方法来标识真实用户;
  2. 通过 login("userID") 来把 SDK 自动生成的 uuid 与现在传入的 userID 关联。且以后会一直使用这个 userID

app.ux

import sensors from './sensorsdata.min.js';
sensors.setPara(...);
sensors.login("userID");
JS

4. Page 中追踪自定义事件 track(eventName,[properties])

采集自定义事件。

  • eventName:String,必填,事件名称;
  • properties:Object,选填,为该事件设置的事件属性;

第一次接入神策分析时,建议先追踪 3~5 个关键的事件,只需要几行代码,便能体验神策分析的分析功能。例如:电商产品,可以追踪用户注册、浏览商品和下订单等事件。

index.ux

// 追踪浏览商品事件。 
this.$app.sensors.track('ViewProduct', {
	ProductId: '123456',
	ProductCatalog: "Laptop Computer",
	ProductName: "MacBook Pro",
	ProductPrice: 12345
}); 
JS

5. 设置用户属性

5.1. setProfile(properties)

直接设置用户的属性,如果存在则覆盖。

  • properties:Object,必选。

index.ux

sensors.setProfile({
	email:'xxx@xx',
	favoriteFruits: ['苹果', '油桃'],
	subscribers: 7277
});
JS

5.2. setOnceProfile(properties)

如果不存在则设置,存在就不设置。

  • properties:Object,必选。

index.ux

sensors.setOnceProfile({
	email:'xxx@xx',
	favoriteFruits: ['苹果', '油桃'],
	subscribers: 7277
});
JS