代码拉取完成,页面将自动刷新
HiChecker,可以作为应用开发阶段使用的检测工具,用于检测代码运行过程中部分易忽略的问题,如应用线程出现耗时调用、应用进程中元能力资源泄露等问题。开发者可以通过日志记录或进程crash等形式查看具体问题并进行修改,提升应用的使用体验。
依赖部件 | 依赖描述 |
---|---|
媒体子系统/【image部件】图片基础框架 ImagePacker | 在比较耗时的函数中调用HiChecker接口,通知有耗时调用,同时传入对应的告警提示字符串 |
元能力子系统/ability_runtime/运行管理支持DFX FeatureAbility | 提供注册泄露检测逻辑,通知检测模式相关结果 |
支持特性:
/base/hiviewdfx/hichecker
├── frameworks # 框架代码
│ └── native # HiChecker native实现代码
├── interfaces # 接口
│ └── native # C++接口
│ └── innerkits # 对内部子系统提供的接口
| └── js # JS接口
│ └── kits # 对应用提供的接口
├── test # 测试用例
│ └── unittest
主要接口说明
类 | 方法 | 描述 |
---|---|---|
HiChecker | BigInt RULE_CAUTION_PRINT_LOG = 1<<63; | 告警规则,仅记录日志 |
BigInt RULE_CAUTION_TRIGGER_CRASH = 1<<62; | 告警规则,让应用退出 | |
BigInt RULE_THREAD_CHECK_SLOW_PROCESS = 1; | 检测规则,检测耗时函数调用 | |
BigInt RULE_CHECK_ABILITY_CONNECTION_LEAK = 1<<33; | 检测规则,检测ability泄露 | |
BigInt RULE_CHECK_ARKUI_PERFORMANCE = 1<<34; | 检测规则,用于arkui性能检测 | |
addRule(BigInt rule) : void | 增加一个或多个检测项 | |
removeRule(BigInt rule) : void | 删除一个或多个检测项 | |
getRule() : BigInt | 获取所有检测项 | |
contains(BigInt rule) : boolean | 当前是否有某一个检测项 | |
NotifySlowProcess(std::string) : void | 通知有耗时调用 | |
NotifySlowEvent(std::string) : void | 通知有耗时事件 | |
NotifyAbilityConnectionLeak(Caution caution) : void | 通知有ability泄露 | |
NotifyCaution(uint64_t rule, const std::string& tag, Caution& caution) : void | 规则检测通用接口 | |
Caution | GetTriggerRule() : BigInt | 获取触发当前告警的检测规则 |
GetCustomMessage() : String | 获取更多辅助信息 | |
GetStackTrace() :String | 获取堆栈信息 |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。