基础功能

1 SDK原理概述

1.1 原理

SDK 提供一种指令形态的埋点调用方式,您通过对 aplus 环境变量的指令队列 aplus_queue发送指令,由 aplus 环境变量来执行指令,进而完成您的需求,指令格式如下:

aplus_queue.push({
 	'action': "$APIName", 
  'arguments': [$arguments] //arguments 为指定 API 的入参,
})
  • action 参数代表发送指令的 API 名称,其入参为一个字符串,取值为枚举值,可用的枚举值如下

    • setMetaInfo:覆盖SDK的已有默认设置

    • appendMetaInfo: 追加SDK的默认配置

    • getMetaInfo:获取 SDK 的当前配置

    • record:用于发送事件日志

    • sendPV:用于发送页面日志

  • arguments 参数为 action 中指定 API 的入参,格式是一个数组,数组内的元素顺序与 API 定义的入参顺序一致

1.2 示例

//变更 SDK 的默认设置
aplus_queue.push({
 action: 'aplus.setMetaInfo',
  arguments: [metaName, metaValue]
});

//获取 SDK 的当前配置
aplus.getMetaInfo(metaName);

//用于发送事件日志
aplus_queue.push({
 action: 'aplus.record',
  arguments: [trackerEventCode, eventType, eventParams]
});

//用于发送页面日志
aplus_queue.push({
 action: 'aplus.sendPV',
  arguments: [pageEventConfig, userData]
});

2 日志打印

aplus_queue.push({
  action: 'aplus.setMetaInfo',
  arguments: ['DEBUG', true]
});

3 日志发送策略

事件触发时就会上报,为准实时上报

4 应用基础信息配置

在SDK引入部分,可以修改或者追加一些默认设置

//集成应用的appKey
aplus_queue.push({
  action: 'aplus.setMetaInfo',
  arguments: ['appKey', 'xxxxxxx']
})

aplus_queue.push({
  action: 'aplus.setMetaInfo',
  arguments: ['aplus-rhost-v', 'quickaplus-Web-api.xxx.com.cn']
});

//开启调试模式
aplus_queue.push({
  action: 'aplus.setMetaInfo',
  arguments: ['DEBUG', true]
});

MetaName

元配置说明

metaValue赋值说明

支持版本

DEBUG

开启后,控制台将输出SDK 埋点日志

true为打开日志,false为关闭日志

all

appVersion

设置当前Web的版本

请填写当前Web的版本

all

appKey

平台系统中创建应用时填写的Appkey

需要在平台中获取埋点Web应用对应的appkey

all

aplus-rhost-v

采集上报域名(Deprecated)

在平台的采集信息中可以获取

all

trackDomain

采集上报域名

在平台的采集信息中可以获取

v2.0.0开始

_dev_id

自定义设备ID

该方式将覆盖掉QuickTracking SDK自动生成的设备ID

all

_user_id

设置userid

业务自定义的登录账号ID

all

_hold

发送Hold信号. 在 SDK整个生命周期内, _hold可设置多次,但BLOCK与START需成对出现,否则会影响日志发送

枚举类型, 可用值及说明如下:

  • "START":  开启日志发送

  • "BLOCK": 阻止日志发送,可以在 BLOCK状态之前,完善发送日志前的准备工作 

all

注:仅对使用 aplus_queue.push 方式的API调用生效

aplus-jsbridge-only

H5上报日志开关

  • true:关闭H5的日志发送,一般为桥接场景下可控制只发送桥接日志

  • false:打开H5的日志发送(默认false)

all

aplus-utm-expire-days

设置utm参数过期时间

默认为当前会话期有效,支持按天为单位自定义utm参数过期时间,结果保存在cookie中,最大时间设置以各浏览器支持的cookie实际最大过期时间说明为准

v2.0.7开始

aplus-preset-events-disabled

用于关闭SDK默认采集的预制事件

默认值为undefined, 支持以数组类型来赋值,示例:

aplus_queue.push({
  action: 'aplus.setMetaInfo',
  arguments: ['aplus-preset-events-disabled', [
    '$$_page_leave', //预制页面离开事件
    '$$_hotpoint',  //预制热力图点击事件
  ]] 
});

v2.0.9 开始