API功能

JS数据监测接口

如需使用JS数据监控接口,需要使用BonreeSDK预先插入到WebView框架中的桥接对象bonreeJsBridge来调用各设置函数。如:

bonreeJsBridge.setUserID('1234');

注意:使用JS行为数据监控功能需要开启WebView功能。

JS接口的参数限制与原生基本一致。JS特有接口参数限制本文档单独标注。

设置用户ID

// 设置会员ID
function setUserID(ID);
  • 接口说明
参数名 类型 注释
ID String 用户ID
  • 示例

    在需要设置会员用户id时添加如下代码:

      <script>
          function myclick() {
              bonreeJsBridge.setUserID('1234');
          }
      </script>
    

设置用户附加信息

function setExtraInfo(extraInfo);
  • 接口说明
参数名 类型 注释
extraInfo String 用户附加信息。key-value形式的Json字符串。
  • 示例

    某html页面在进入某一个页面时设置自定义信息:

      <script>
          function myclick() {
              var json = '{ "js1": "jsvalue1", "js2": "jsvalue1", "js3":"jsvalue3" }';
              bonreeJsBridge.setExtraInfo(json);
          }
      </script>
    

自定义异常

function setCustomException(exceptionType, causedBy, errorDump);
  • 接口说明
参数名 类型 注释
exceptionType String 异常类型。必传参数,空或空串接口调用无效。
causedBy String 异常原因
errorDump String 异常堆栈
  • 示例

      <script>
          function customException() {
              bonreeJsBridge.setCustomException("Custom exception type", "Caused by customer.", "Custom error dump 0\nCustom error dump 1");
          }
      </script>
    

自定义视图

// 自定义视图开始记录
function setCustomPageStart(pageName, pageAlias);
// 自定义视图结束记录
function setCustomPageEnd(pageName, pageAlias);
  • 接口说明
参数名 类型 注释
pageName String 页面名称。必传参数,空或空串接口调用无效。
pageAlias String 页面别名
  • 示例

    监测关于html界面,其对应页面名称为About.html:

      <script>
          function myclick() {
              bonreeJsBridge.setCustomPageStart("001", "About");
              bonreeJsBridge.setCustomPageEnd("001", "About");
          }
      </script>
    

注意:setCustomPageStartsetCustomPageEnd需成对调用。

自定义事件

function setCustomEvent(eventId, eventName);
  • 接口说明
参数名 类型 注释
eventId String 事件ID。必传参数,空或空串接口调用无效。
eventName String 事件名称
  • 示例

    检测某html页面内的某button点击情况:

      <script>
          function myclick() {
              bonreeJsBridge.setCustomEvent("1111", "button click");
          }
      </script>
    

自定义日志

function setCustomLog(logInfo);
  • 接口说明
参数名 类型 注释
logInfo String 日志信息。必传参数,空或空串接口调用无效。
  • 示例

    检测某JS函数的执行日志:

      <script>
          function myclick() {
              bonreeJsBridge.setCustomLog("2020-01-01 08:30:00 Print myclick()");
          }
      </script>
    

自定义指标

function setCustomMetric(metricName, metricValue);
  • 接口说明
参数名 类型 注释
metricName String 指标名称。必传参数,空或空串接口调用无效。
metricValue String 指标数值。必传参数,指标为空或非数值接口调用无效。
  • 示例

    检测JS函数内某测试指标:

      <script>
          function myclick() {
              bonreeJsBridge.setCustomMetric("测试指标01", "1");
          }
      </script>
    

自定义H5性能数据

function setCustomH5performanceData(dataInfo);
  • 接口说明
参数名 值类型 注释 传参限制 值说明
pvid String 页面唯一标识 非空校验,类型校验,长度校验<=2083 UUID(数据异常默认生成新ID)
url String document.url 非空校验,类型校验,长度校验<=2083 --
imd Number main document 非空校验,类型校验 1-主文档;0-非主文档
ns Number navigation start (ms) 非空校验,类型校验 [时间戳] 无此指标数据传值 0
ues Number unload event start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
uee Number unload event end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
rds Number redirect start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
rde Number redirec end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
fs Number fetch start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
dls Number domain lookup start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
dle Number domain lookup end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
cs Number connect start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
scs Number secure connection start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
ce Number connect end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
reqs Number request start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
rsps Number response start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
rspe Number response end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
dl Number dom loading (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
di Number dom interactive (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
dcles Number dom content loaded event start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
dclee Number dom content loaded event end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
dc Number dom complete (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
les Number load event start (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 0
lee Number load event end (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
fp Number first-paint (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
fcp Number first-contentful-paint (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1
lcp Number largest-contentful-paint (ms) 非空校验,类型校验 [相对值] 无此指标数据传值 -1

标识相对值的时间指标指该指标与navigation start的相对时间。

  • 示例

      function fun() {
          var dataInfo = {
              "pvid":"00000000-0000-0000-0000-000000000000",    
              "url":"http://localhost/index.html",
              "imd":1,
              "ns":1619061461208,
              "ues":-1,
              "uee":-1,
              "rds":-1,
              "rde":-1,
              "fs":3,
              "dls":5,
              "dle":6,
              "cs":7,
              "scs":9,
              "ce":12,
              "reqs":13,
              "rsps":15,
              "rspe":19,
              "dl":20,
              "di":22,
              "dcles":23,
              "dclee":25,
              "dc":26,
              "les":26,
              "lee":35,
              "fp":-1, 
              "fcp":-1,
              "lcp":-1
          };
          bonreeJsBridge.setCustomH5performanceData(JSON.stringify(dataInfo));
       }
    

自定义路由切换数据

function setCustomRouteChangeData(dataInfo);
  • 接口说明
参数名 值类型 注释 传参限制 值说明
tu String 目标路由(URL) 非空校验,长度校验<=2083 --
fu String 来源路由(URL) 非空校验,长度校验<=2083 --
d Number 切换耗时 (ms) 非空校验,类型校验 --
sta Number 切换状态 非空校验,类型校验 0-正常;2-异常
al String 路由名称(别名) 长度校验 >256 字段值丢弃 --
pt String 路由地址 非空校验,长度校验<=256 --
rt String document.url(去锚点) 非空校验,长度校验<=2083 --
pu String document.url 非空校验,长度校验<=2083 --
fw String 单页面框架名称 非空校验,长度校验<=256 Vue,Angular,React 任选其一
  • 示例

      function fun() {
          var dataInfo = {
              "tu":"http://localhost/index#/home",
              "fu":"http://localhost/index#/",
              "d":2,
              "sta":0,
              "al":"",
              "pt":"/home",
              "rt":"http://localhost/index/home",
              "pu":"http://localhost/index#/home",
              "fw":"Vue"
          };
          bonreeJsBridge.setCustomRouteChangeData(dataInfo);
      }
    

results matching ""

    No results matching ""