跳到主要内容
版本:3.7.0

Weex API说明

一、启动配置接口

<#Config地址#><#AppID#> 请于平台上获取,获取方式参见《如何查询AppID和Config地址?》。如有问题请联系技术支持。

BonreeSDK启动接口

function start();
  • 接口说明
参数名类型注释
appIDString博睿SDK平台生成的应用唯一ID
VueObject当前环境的Vue实例
  • 示例

    Bonree.start("<#AppID#>", Vue);

设置Config地址

私有云客户设置私有部署的config地址时使用。该接口需要在调用start前设置。

function setConfigAddress()
  • 接口说明
参数名类型注释参数限制
configAddressStringconfig地址字符串长度大于0,小于等于2083,否则接口调用失败
  • 示例

    Bonree.setConfigAddress("<#Config地址#>");

设置App版本

App版本默认在配置文件中获取真实版本号。如有主动配置需求,需要在调用start前调用以下接口设置版本信息。

function setAppVersion();
  • 接口说明
参数名类型注释参数限制
appVersionString需要设置的版本信息字符串长度大于0,小于等于64,否则接口调用失败
  • 示例

    Bonree.setAppVersion("3.2.1");

设置下载渠道名称

如有主动配置需求,需要在调用start前调用以下接口设置渠道名称。

function setChannelID();
  • 接口说明
参数名类型注释参数限制
channelIDString需要设置的渠道名称符串长度大于0,小于等于256,否则接口调用失败
  • 示例

    Bonree.setChannelID("AppStore");

设置自定义的设备ID

设备ID(deviceID)默认由SDK生成并保存。如有主动配置需求,需要在调用start前调用以下接口设置设备ID。

function setDeviceID();
  • 接口说明
参数名类型注释参数限制
deviceIDString需要设置的设备ID字符串长度大于0,小于等于256,且不包含特殊字符(仅支持字母数字下划线_连接符-),否则接口调用失败
  • 示例

    Bonree.setDeviceID("0123456789");

设置持续丢帧时间

设置判定卡顿时需要的持续丢帧时间。需要在调用start前调用以下接口设置。

function setDropFrameTime();
  • 接口说明
参数名类型注释
timeInt持续丢帧时间(s),0< dropFrameTime <=30,不设置默认5s
  • 示例

    Bonree.setDropFrameTime(5);

自定义冷启动结束时间

如需自定义冷启动的结束时机,可以调用以下两个接口完成自定义功能。具体使用方式为:

  1. 调用自定义冷启动开关接口,开启自定冷启动功能。(该接口需在调用start前设置)
  2. 在需要的时机调用冷启动结束接口,记录冷启动结束。
// 标识使用自定义冷启动结束时间(需在调用 start 前设置)
function useCustomLaunch();
  • 接口说明
参数名类型注释
usedBOOL是否使用自定义冷启动结束时间
// 记录冷启动结束
function recordCustomLaunchEnd();
  • 示例

    // 需在调用start前设置
    Bonree.useCustomLaunch(true);

    // ...

    // 在需求时机位置调用
    Bonree.recordCustomLaunchEnd();

注意:开启自定义冷启动功能后,若30s内未调用记录冷启动结束接口,冷启动监控过程会强制结束。

设置SDK自身请求Header

调用本接口,可以给SDK自身发起的请求的请求头Header中添加信息。需要在调用start前调用以下接口设置。

function setSDKRequestHeaders();
  • 接口说明
参数名类型注释
headersObject要设置的请求头键值对(最多设置64个,key长度限制256个字符,value长度限制512个字符)
  • 示例

    Bonree.setSDKRequestHeaders(
    {
    "headerKey0":"headerValue0",
    "headerKey1":"headerValue1"
    }
    );

二、数据获取接口

获取设备ID

默认情况下,设备的唯一ID由BonreeSDK内部生成并持久维护,用来标识产生各性能数据的设备。我们提供了获取该设备ID的接口,用以支持监控数据在设备维度的自主关联等需求场景。

function getDeviceID();
  • 接口说明
返回值类型注释
StringSDK中生成的设备ID。如果事先设置了,则返回设置的值。
  • 示例

    var deviceID = Bonree.getDeviceID();

获取SDK版本

该接口返回原生端探针版本号,注意在Android和iOS返回的值可能不同。

function getSDKVersion();
  • 接口说明
返回值类型注释
StringSDK的版本号
  • 示例

    var version = Bonree.getSDKVersion();

三、自定义功能接口

自定义用户信息

BonreeSDK支持设置与用户相关的信息,从而完成性能数据与实际用户相关联的需求场景。

设置用户信息有两种方式:

1. 设置用户ID,以字符串形式给用户做标识。接口如下:

function setUserID();
  • 接口说明
参数名类型注释参数限制
userIDString用户ID字符串可为空或空串。
字符串小于等于256,且不包含特殊字符(仅支持字母数字下划线_连接符-),否则接口调用失败。
  • 示例
    Bonree.setUserID("user-id");

2. 以 Key-Value 形式设置用户附加信息。接口如下:

// 设置附加信息
function setExtraInfo();
  • 接口说明
参数名类型注释参数限制
extraInfoObject用户附加信息。Map可为空或空集合。
转JSON后长度在7000字符以内,否则接口调用失败。
  • 示例

    Bonree.setExtraInfo(
    {
    "id":"123456",
    "name":"Tom"
    }
    );

自定义异常

调用接口并传入相应参数,可完成自定义异常数据的统计功能。

function setCustomException();
  • 接口说明
参数名类型注释参数限制
exceptionTypeString异常类型。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
causedByString异常原因字符串可为空或空串。
字符串小于等于512,超长截取。
errorDumpString异常堆栈超出10000字符时会被切割
  • 示例

    Bonree.setCustomException("Custom exception type", "Caused by customer.", "Custom error dump 0\nCustom error dump 1");

自定义视图

调用接口并传入相应参数,可完成自定义视图数据统计功能。

// 自定义视图——标记视图开始(和视图结束方法成对调用)
function setCustomPageStart();
// 自定义视图——标记视图结束(和视图开始方法成对调用)
function setCustomPageEnd();
  • 接口说明
参数名类型注释参数限制
pageNameString页面名称。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
pageAliasString页面别名字符串可为空或空串。
字符串小于等于256,超长截取。
  • 示例

    Bonree.setCustomPageStart("page01", "首页");

    Bonree.setCustomPageEnd("page01", "首页");

注意:自定义视图的开始与结束记录接口必须成对调用,并且同一视图的pageName必须一致,才能正确统计一个完整自定义视图数据并上报。

自定义事件(完整版)

分别调用开始与结束接口并传入相应参数,可完成自定义事件数据与事件持续时间的统计功能。

// 自定义事件开始
function setCustomEventStart();
// 自定义事件结束
function setCustomEventEnd();
  • 接口说明
参数名类型注释参数限制
eventIDString事件ID。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
eventNameString事件名称字符串可为空或空串。
字符串小于等于256,超长截取。
eventLabelString事件标签字符串可为空或空串。
字符串小于等于256,超长截取。
paramString事件附加信息字符串可为空或空串。
字符串小于等于7000,超长截取。
infoObject事件业务信息字典可为空。
转JSON后长度在7000字符以内,否则接口调用失败。
  • 示例

    Bonree.setCustomEventStart("001", "用户登录", "Login", "", {"text":"登录"});
    // Some code...
    Bonree.setCustomEventEnd("001", "用户登录", "Login", "", {"text":"登录"});

注意:自定义事件开始与结束的匹配使用eventID唯一匹配,使用时请确保未结束事件ID的唯一性。

自定义事件(精简版)

调用接口并传入相应参数,可完成自定义事件数据统计功能。

function setCustomEvent();
  • 接口说明
参数名类型注释参数限制
eventIDString事件ID。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
eventNameString事件名称字符串可为空或空串。
字符串小于等于256,超长截取。
eventLabelString事件标签字符串可为空或空串。
字符串小于等于256,超长截取。
paramString事件附加信息字符串可为空或空串。
字符串小于等于7000,超长截取。
infoObject事件业务信息字典可为空。
转JSON后长度在7000字符以内,否则接口调用失败。
  • 示例

    Bonree.setCustomEvent("001", "用户登录", "Login", "", {"text":"登录"});

自定义日志

调用接口并传入相应参数,可完成自定义日志数据统计功能。

function setCustomLog();
  • 接口说明
参数名类型注释参数限制
logInfoString日志信息。必传参数,空或空串接口调用无效。字符串长度大于0,否则接口调用失败。
字符串小于等于10000,超长截取。
paramString附加信息(预留字段,暂无使用场景)-
  • 示例

    Bonree.setCustomLog("2020-01-01 08:30:00 Print log info.", "");

自定义指标

调用接口并传入相应参数,可完成自定义指标数据统计功能。

function setCustomMetric();
  • 接口说明
参数名类型注释参数限制
metricNameString指标名称。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
metricValueInt指标值。必传参数,指标为空接口调用无效。-
paramString附加信息(预留字段,暂无使用场景)-
  • 示例

    Bonree.setCustomMetric("测试指标01", 1, "");

自定义方法

调用接口并传入相应参数,可完成自定义方法数据统计功能。

// 自定义方法开始
function setCustomMethodStart();

// 自定义方法结束
function setCustomMethodEnd();
  • 接口说明
参数名类型注释参数限制
methodNameString方法名称。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
paramString附加信息(预留字段,暂无使用场景)-
  • 示例

    Bonree.setCustomMethodStart("testCustomMethod", "");

    // Do something...

    Bonree.setCustomMethodEnd("testCustomMethod", "");

注意:自定义方法以方法名参数匹配同一方法的前后调用,使用时须保证执行期间方法名唯一。

设置自定义请求信息接口

调用接口并传入相应参数,可以给匹配到的网络数据关联自定义的字符串信息。

function setRequestExtraInfo();
  • 接口说明
参数名类型注释参数限制
headerKeyString需要匹配的请求头Key。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
valueString需要匹配的请求头Value。必传参数,空或空串接口调用无效。字符串长度大于0,小于等于256,否则接口调用失败。
infoString关联的自定义信息。为空则清除对应键值缓存的信息。字符串长度大于0,小于等于256,若为空则清除对应键值缓存的信息。
  • 示例

    Bonree.setRequestExtraInfo("brkey", "30F032AA-7837-479E-971D-E382B0F90D9B", "name=TOM&age=12");

使用本接口前,需要保证目标请求的请求头中有唯一标识,比如,某请求的请求头如下:

POST /upload HTTP/1.1
Host: sdkupload.bonree.com
Content-Type: application/json
Content-Length: 781
Connection: keep-alive
Br-Content-Encoding: gzip
brkey: 30F032AA-7837-479E-971D-E382B0F90D9B

其中brkey为该请求的唯一标识字段,若要给该请求关联信息

name=TOM&age=12

则需要在请求发出之前调用

Bonree.setRequestExtraInfo("brkey", "30F032AA-7837-479E-971D-E382B0F90D9B", "name=TOM&age=12");