本章节介绍了HarmonyOS SDK的接入方法。
前言
本SDK基于HarmonyOS API 12开发,compatibleSdkVersion为5.0.0(12)。
准备工作
请参考HarmonyOS应用开发文档准备HarmonyOS应用开发环境。
请参考Native应用创建鸿蒙应用,在应用设置中查看AppKey和AppSecret。
第一步:安装SDK
在HarmonyOS应用根目录执行以下命令来安装SDK:
ohpm install @aliyun/apm
ohpm install @aliyun/apm_crash
ohpm工具及更多关于OpenHarmony安装第三方SDK的信息请参考OpenHarmony三方库中心仓说明。
第二步:初始化SDK、启动崩溃分析
在Ability onCreate生命周期回调中执行以下代码初始化配置SDK:
说明
建议SDK初始化代码段,放在所有业务代码之前,确保App在启动时,优先加载崩溃分析服务,保障后续崩溃的信息,可以即时获取并上传至控制台。
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';
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_perf_config: APMConfig = {
context: this.context,
appKey: 'appKey参数',
appSecret: 'appSecret参数',
nick: '用户昵称参数',
userId: '用户ID参数',
channel: '用户渠道参数',
hiLog: true, // SDK内的hilog开关
customLogger: new MyCustomLog(), // 自定义日志接口
}
APM.init(apm_perf_config, [crashAnalysisApi])
APM.start();
}
// 省略其它代码
}
其中appKey,appSecret请配置为在准备工作中获取的AppKey和AppSecret。
第三步:接入验证
SDK接入完成后,需进行功能验证:
编写测试代码,模拟/触发移动端崩溃。例如:
//数组越界 let tempList = ['a', 'b'] hilog.info(0x0000, 'apm', 'jsCrash %s', tempList[3].toString())
重启移动端,大概2分钟后在控制台查看是否显示崩溃信息。
说明崩溃数据从采集到上传到控制台显示,存在大约2~3分钟延迟。
1.0.0版本升级到1.0.1版本
1.0.1版本相对于1.0.0版本,我们主要是优化了初始化接口,以支持更多的APM产品,比如性能分析。
需要调整的是SDK接入的第二步,参考第二步:初始化SDK、启动崩溃分析,修改为最新的接入代码即可。
文档内容是否对您有帮助?