当前位置:   article > 正文

日志占位符_鸿蒙系统日志工具HiLog的使用方法!

%{public}s

做为一个 Java 攻城师, 我们除了关心系统的架构这种 high level 的问题,还需要了解一些语言的陷阱,异常的处理,以及日志的输出,这些"鸡毛蒜皮"的细节。

5b7b37e8b15bbbf6a75b651b70b69f84.png

我们需要通过打印一条条日志来掌握程序运行的状态,下面我们就来讲解鸿蒙系统中的 HiLog 日志工具的具体使用方法。

01

HiLog 使用说明

使用 HiLog 前必须在 HiLog 的一个辅助类 HiLogLabel 中定义日志类型、服务域和标记。

一般我们把它定义为常量放在类的最上面:
static final HiLogLabel label = new HiLogLabel(HiLog.LOG_APP, 0x00201"MY_TAG");

上面有三个参数:

  • 日志类型,我们的应用一般取一个常量值:HiLog.LOG_APP,表示是第三方应用。

  • 服务域,16 进制整数形式,取值范围是 0x0 ~ 0xFFFFF。一般情况下,我们建议把这 5 个 16 进制数分成两组,前面三个数表示应用中的模块编号,后面两个表示模块中的类的编号。

  • 一个字符串常量,它标识方法调用的类或服务行为。一般情况下就写类的名字,一般我可用这个标记对日志进行过滤。

日志的级别,和其他日志一样,HiLog 也分成了几个日志级别。

由上到下信息越严重:

  • debug:调试信息

  • info:普通信息

  • warn:警告信息

  • error:错误信息

  • fatal:致命错误信息

02

使用

String url = "www.baidu.com";int errno = 0;HiLog.warn(label, "Failed to visit %{private}s, reason:%{public}d.", url, errno);

按照上述格式就可用在控制台中输入日志信息了,里边还有点东西,需要进一步解释一下。

%{private}s 和 %{public}d 这两个符号我们可用理解为占位符,真正打印到控制台上的值是后面的变量:

cb77d9b078df87c35c66050ddaaf1011.png

  • private:表示私有的,我们在开发阶段的日志中是看得见的,但是运行到手机上后,手机的控制台是隐藏的,看不见的。

  • public:表示共有的,哪里都看得见,不受限制。

  • s:表示字符串。

  • d:表示数字。

03

写 demo 练习

public class MainAbility extends Ability {    static final HiLogLabel HI_LOG_LABEL = new HiLogLabel(HiLog.LOG_APP,0x00101,"MainAbility");    @Override    public void onStart(Intent intent) {        HiLog.info(HI_LOG_LABEL,"======MainAbility onStart is running....");        String ss = "tesst string";        int ii  = 11111;        HiLog.info(HI_LOG_LABEL,"======字符串信息加上变量信息,格式化打印字符串%{public}s,整数%{private}d",ss,ii);        super.onStart(intent);        super.setMainRoute(MainAbilitySlice.class.getName());    }}
文章内容已录制成视频课程《鸿蒙手机应用开发入门》:
https://edu.51cto.com/course/26133.html
? 扫码关注鸿蒙技术社区 ?

5993314d0d685cbc9a4a4f0a2a1c61c0.png

专注开源技术,共建鸿蒙生态

6084da842c4a93afb507fca3629f0ca9.gif

“阅读原文”了解更多

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/245058?site
推荐阅读
相关标签
  

闽ICP备14008679号