为什么OH_LOG_Print,日志不显示,只显示为<private>?看文档说是fmt,支持隐私参数标识,即在格式字符串每个参数中符号后类型前增加{public}、{private}标识,如何把该特性关闭?
下面是宏定义:
#define LOGI(format, args...)
do {
OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, LOG_TAG, "[I][%.20s(%03d)]:" format "\n",
__FILE__ + strlen(__FILE__) - 20, __LINE__, ##args);
}
} while (0)
下面调用LOGI不会打印aa,而是现实test <private\>int aa = 0;LOG I(“test %d”, aa);
OH\_LOG\_Print默认是{private},要打印的话要加{public},这是HarmonyOS安全特性,可以尝试在终端输入hdc shell hilog -p off来关闭。此外您的OH\_LOG\_Print中,第4个参数log\_tag不用写,Log\_domain需要声明,例如: