HarmonyOS SDK升级指南

1.0.0版本升级到1.0.1版本以上

重要

在用户将SDK升级到2.0.0版本后,1.0.0版本的接入方式将不再受支持,因此您需要更新您的接入代码以适配新的版本。

1.0.1版本相对于1.0.0版本,我们主要是优化了初始化接口,以支持更多的APM产品,比如性能分析。

更新SDK

执行以下命令更新SDK包:

ohpm update @aliyun/apm
ohpm update @aliyun/apm_crash
ohpm update @aliyun/apm_perf

调整接入代码

需要调整的是SDK接入的第二步,参考使用SDK,修改为最新的接入代码即可。

同时接入崩溃、性能需要在init时引入两个API,核心代码参考如下:

import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit';
import { window } from '@kit.ArkUI';
import { APM, APMConfig, Logger } from '@aliyun/apm';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { crashAnalysisApi } from '@aliyun/apm_crash';
import { performanceApi } from '@aliyun/apm_perf';

class MyCustomLog implements Logger {
  print(domain: number, tag: string, level: hilog.LogLevel, msg: string): void {
    switch (level) {
      case hilog.LogLevel.DEBUG:
        console.debug(`自定义log msg:${msg}`);
        break;
      case hilog.LogLevel.INFO:
        console.info(`自定义log msg:${msg}`);
        break;
      case hilog.LogLevel.WARN:
        console.warn(`自定义log msg:${msg}`);
        break;
      case hilog.LogLevel.ERROR:
      case hilog.LogLevel.FATAL:
        console.error(`自定义log msg:${msg}`);
        break;
    }
  }
}

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');

    const apm_config: APMConfig = {
      context: this.context,  // 必填
      appKey: 'appKey参数',    // 必填
      appSecret: 'appSecret参数',  // 必填
      nick: '用户昵称参数',  // 可选
      userId: '用户ID参数',  // 可选
      channel: '用户渠道参数',  // 可选
      hiLog: true, // SDK内的hilog开关,可选
      customLogger: new MyCustomLog(), // 自定义日志接口,可选
    }
    // init时根据实际使用功能选择崩溃、性能Api
    APM.init(apm_config, [crashAnalysisApi, performanceApi])
    APM.start();

  }

  // 省略其它代码
}