UTS SDK

更新时间:
复制为 MD 格式

使用uts开发,调用QuickTracking性能体验SDK相关接口,实现QuickTracking原生APM能力在uniapp平台上进行扩展。

1.下载插件

QuickTracking UTS插件下载地址

平台兼容性

Android

iOS

适用版本区间:4.4 - 向上兼容

适用版本区间:9 - 向上兼容

引入&配置SDK:

1.1 单击下载插件并导入HBuilderX

image

1.2 勾选需要集成原生插件的项目

image

1.3 插件使用说明

在使用插件前您需要在Quick Tracking平台中获取专属的埋点Appkey收数域名

image

1.4 Android SDK初始化前置操作

SDK需要Applicaiton.onCreate函数中调用预初始化函数QtConfigure.preInit(),预初始化函数不会采集设备信息

需要您修改对应module中的index.uts文件,如图:

image

重要

uts插件基于uni-app-x进行适配的,如果遇到无法初始化等问题,请使用 index.uts替换掉原有Android中的index.uts文件

1.5 鸿蒙Next SDK初始化前置操作

因架构限制需要在应用侧stage中进行SDK的预初始化

需要您修改对应module中的index.uts文件,如图:

image

2.SDK API

2.1 SDK初始化

App.uvue

<script>
  // #ifdef APP
  import * as QtAnalytics from '@/uni_modules/QT-Analytics';
  import { initWithConfig, ApmConfig } from '@/uni_modules/QT-APM';
  // #endif
    
  export default {
    data() {
      return {
        title: 'Hello'
      }
    },
    onLoad() {
      // #ifdef APP-ANDROID || APP-HARMONY
      QtAnalytics.init()
      // #endif
      // #ifdef APP-IOS
      QtAnalytics.setCustomDomain('您的收数服务域名', '您的备用收数服务域名');
      QtAnalytics.initWithAppkey('您应用的appkey', '应用市场');
      // #endif
      const apmConfig : ApmConfig = {
        crashAndBlockMonitorEnable: true,
        sendBeatInterval: 30,
        initSendPVEnable: true,
      };
      initWithConfig(apmConfig);
    }	
  }
</script>

H5集成方式请参考文档:Web SDK

小程序集成方式请参考文档:小程序 SDK

2.2 接口相关

1. 配置功能开关

export type ApmConfig = {
  // java crash捕获(Android)
  enableCrashJava ?: boolean,
  // native crash捕获(Android)
  enableCrashNative ?: boolean,
  // ANR捕获(Android)
  enableAnr ?: boolean,
  // 卡顿捕获(Android)
  enablePa ?: boolean,
  // 卡顿捕获时间(Android)
  paTimeOut ?: number,
  // 启动监控(Android)
  enableLaunch ?: boolean,
  // 内存监控(Android)
  enableMemory ?: boolean,
  // App与H5打通开关(Android)
  enableH5 ?: boolean,
  // 日志回捞(Android)
  enableCodeLog ?: boolean,
  // 日志回捞用户标识(Android)
  logUserId ?: string,
  // 冷起PV上报开关(Android)
  enableSendPv ?: boolean,
  // 启动模块监控开关(iOS)
  launchMonitorEnable ?: boolean,
  // 内存模块监控开关(iOS)
  memMonitorEnable ?: boolean,
  // 网络模块监控开关(iOS)
  networkEnable ?: boolean,
  // H5打通模块开关(iOS)
  javaScriptBridgeEnable ?: boolean,
  // OOM模块监控开关(iOS)
  oomMonitorEnable ?: boolean,
  // 原生页面模块监控开关(iOS)
  pageMonitorEnable ?: boolean,
  // 初始化主动发送PV(iOS)
  initSendPVEnable ?: boolean,
  // 用于前后端链路打通(iOS)
  rumConfig ?: string,
  // crash&卡顿监控开关(iOS)
  crashAndBlockMonitorEnable ?: boolean,
  // 卡顿监控参数:发送检测心跳的时间间隔(iOS)
  sendBeatInterval ?: Number,
  // 卡顿监控参数:检测卡顿的时间间隔(iOS)
  checkBeatInterval ?: Number,
  // 卡顿监控参数:连续多少次没心跳 认为触发卡顿(iOS)
  toleranceBeatMissingCount ?: Number,
}

示例:

const apmConfig : ApmConfig = {
  crashAndBlockMonitorEnable: true,
  sendBeatInterval: 30,
  initSendPVEnable: true,
};

2. 崩溃回调

export function registerUMCrashCallback(callback : QTCrash) {
  const crashCall = new QTCrashCallback(callback);
  UMCrash.registerUMCrashCallback(crashCall)
}

3. 自定义异常

export function generateCustomLog(e : string, type : string)

4. APP应用内H5页面的APM功能

export function enableJavaScriptBridge(view : WebView)

5. 日志回捞(安卓)

export class QTlog