HarmonyOS 鸿蒙Next 有没有native日志OH_LOG_Print及hilog的封装样例

发布于 1周前 作者 songsunli 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 有没有native日志OH_LOG_Print及hilog的封装样例 有没有native日志 的OH_LOG_Print的封装样例,hilog的封装样例

2 回复

可通过如下模板进行可变参数封装
template<typename… P>
void ppp(const char* fmt, P… p) {
OH_LOG_Print(LOG_APP, LOG_INFO, LOG_DOMAIN, “XXX”, fmt, p…);
}

更多关于HarmonyOS 鸿蒙Next 有没有native日志OH_LOG_Print及hilog的封装样例的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next 中确实提供了用于日志记录的宏和接口,其中包括 OH_LOG_Printhilog。以下是一个关于如何使用这些日志功能的简单封装样例:

OH_LOG_Print 是用于打印日志的宏,通常用于系统或内核层的日志记录。在应用程序层,更推荐使用 hilog 接口,因为它提供了更丰富的日志级别和标签功能。

以下是一个 hilog 的封装样例:

#include <stdio.h>
#include <hilog/log.h>

#define LOG_DOMAIN 0xD000F000
#define LOG_TAG "MyAppTag"

void MyLogFunction(int level, const char *fmt, ...) {
    va_list args;
    va_start(args, fmt);
    HILOG_V(level, LOG_DOMAIN, LOG_TAG, fmt, args);
    va_end(args);
}

int main() {
    MyLogFunction(HILOG_DEBUG, "This is a debug log.");
    MyLogFunction(HILOG_INFO, "This is an info log.");
    MyLogFunction(HILOG_WARN, "This is a warning log.");
    MyLogFunction(HILOG_ERROR, "This is an error log.");
    return 0;
}

在上面的代码中,我们定义了一个 MyLogFunction,它接收日志级别、格式字符串和可变参数,然后使用 HILOG_V 宏将日志输出。LOG_DOMAINLOG_TAG 用于标识日志的来源,便于日志的过滤和查询。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部