快应用SDK

快应用SDK支持QuickTracking常用埋点事件及属性,如启动事件、退出事件、页面事件、自定义事件、用户属性、全局属性等

1.引入&配置SDK

为了在您的快应用项目中集成QuickTracking服务,需要获取最新的快应用SDK。请访问以下线上地址下载或直接引用最新版本的SDK文件:

快应用SDK线上地址:https://g.alicdn.com/dt-f2e/qt-quickapp-sdk/1.0.0/qt_quickapp.js

  1. 登录QuickTracking平台,进入管理控制台--采集信息--小程序sdk信息

    image

    qt_quickapp.js文件放入项目对应目录下(示例:以src/assets/js 为例)

    在应用入口文件app.ux文件中添加

    // 添加在 app.ux 头部
    import qt from './assets/js/qt_quickapp.js';
  2. 配置sdk参数

    引入sdk后,调用setParams进行sdk的初始化配置

    // 添加在 app.ux 头部
    import qt from './assets/js/qt_quickapp.js';
    qt.setParams({
      /************   必选字段   *************/
      appKey: '当前应用的appKey', 
      trackDomain: '当前应用的收数域名',
      /************   可选字段   *************/
      showLog: true, //是否展示sdk日志 true展示 false关闭
      userId: 'test_user', //用户账号,也可通过调用login接口配置
      globalproperty: {  //事件的全局属性
        a:1,
        b:2
      }
    });

2.初始化SDK

在完成sdk的参数配置之后,通过调用init方法来初始化sdk。

//app.ux 文件的onCreate方法
export default {
  onCreate(options) {
    // sdk初始化调用
    qt.init(); //将qt注册在全局
  }
}

3.添加埋点

3.1应用启动埋点

API:qt.appLaunch('应用启动的参数')

//app.ux 文件中的onCreate方法中调用qt.appLaunch()方法
export default {
  onCreate(options) {
    qt.init();
    qt.appLaunch(options);
  },
  ...
}

3.2应用退出埋点

API:qt.appHide()

//app.ux 文件中的onHide方法中调用qt.appHide()方法
export default {
	onHide() {
    qt.appHide();
  }
}

3.3页面浏览事件埋点

API:qt.sendPageStart('事件属性对象')

事件属性对象:该字段代表事件的自定义参数,其取值为一个JSON对象(平铺的简单对象,不能多层嵌套),参数取值支持javascript值类型中string、number 、boolean,如果取值为空,传值""即可

示例:

//测试页面 pages/TestPage/index.ux
export default {
  ...
  onShow() {
    qt.sendPageStart({
      page_name: 'test_page', //预制字段(可选)页面编码
      page_title: '页面title', //预制字段(可选)页面title
      param1: 'xxx',
      param2: 'xxx'
    });
  }
	...
}

3.4事件埋点

API:qt.sendEvent('事件编码', '事件属性对象')

事件编码:该字段为在Quicktracking管理平台注册的点击、曝光、其他等自定义事件的事件编码,仅支持英文字符串格式,最长支持128位字符串

事件属性对象:该字段代表事件的自定义参数,其取值为一个JSON对象(平铺的简单对象,不能多层嵌套),参数取值支持javascript值类型中string、number 、boolean,如果取值为空,传值""即可。

示例:

//测试页面 pages/TestPage/index.ux
export default {
  ...
  onTestButtonClick() {
  	qt.sendEvent('test_clk', {
      page_name: 'test_page', //预制字段(可选)页面编码
      page_title: '页面title', //预制字段(可选)页面title
      param1: 'xxx',
      param2: 'xxx'
    });
  }
	...
}

4.设置全局属性

API:qt.setGlobalProperty('全局属性对象')

//方式1
qt.setGlobalProperty({
  param1: '1111',
  param2: 2222,
  param3: true
});

//方式2
qt.setParams({
	....
  globalproperty: {
    param1: '1111',
    param2: 2222,
    param3: true
  }
});

上述调用后 globalproperty 为:{ param1: '1111', param2: 2222, param3: true }

追加全局属性

API:qt.appendGlobalProperty('全局属性对象')

qt.appendGlobalProperty({
  param4: '4444',
  param5: 55555
});

上述调用后 globalproperty 为:

{ param1: '1111', param2: 2222, param3: true, param4: '4444', param5: 55555 }

5.设置用户账号

API:qt.login('用户账号id')

qt.login('用户账号id') //上报用户账号,并缓存

API:qt.logoff()

qt.logoff() //清空用户账号缓存

6.用户属性上报

API:qt.sendUserProfile('用户属性对象')

注:上报用户属性之前,需要先上报用户账号

qt.sendUserProfile({
  name: '张三',
  age: '25',
  level: 'vip3'
});

7.采集多种id类型

API:qt.setIds('多种id组成的对象')

注:请确保下述每一个idkey书写正确

qt.setIds({
  openId: 'xxxx',
  unionid: 'xxxxx',
  androidId: 'xxxxx',
  advertisingId: 'xxxxx',
  phonenumber: 'xxxxx',
  mac: 'xxxxx',
  oaid: 'xxxxx',
  serial: 'xxxxx',
  deviceId: 'xxxxx'
});

上述各id字段的含义请参考快应用官方文档

https://doc.quickapp.cn/features/service/account.html?h=openid

https://doc.quickapp.cn/features/system/device.html?h=deviceId

8.查看sdk日志

sdk参数配置showLogtrue

qt.setParams({
  ...
  showLog: true
})

image

9.埋点验证

开发者在完成埋点功能之后,可通过QuickTracking平台的埋点验证功能对已有埋点进行验证,首先获得log_xxxx形式的debugId,并将其添加到sdk配置参数用以开启埋点验证模式下的日志上报

插入debugId用以完成埋点配置

// 添加在 app.ux 头部
import qt from './assets/js/qt_quickapp.js';
qt.setParams({
  ...
  debugId: 'log_xxxxxxxx', //用于埋点验证使用
  ....
});