鸿蒙应用开发入门(五):日志HiLog的使用
头像 宋你一朵小红花 2020-12-28 10:00:00    发布
3794 浏览 23 点赞 17 收藏

5.1 概述
做一个Java攻城师, 我们除了关心系统的架构这种high level的问题,还需要了解一些语言的陷阱, 异常的处理, 以及日志的输出, 这些"鸡毛蒜皮"的细节。
我们需要通过打印一条条日志来掌握程序运行的状态,下面我们就来讲解鸿蒙系统中的HiLog日志工具的具体使用方法。


5.2 HiLog使用说明
1. 使用HiLog前必须在HiLog的一个辅助类HiLogLabel中定义日志类型、服务域和标记。一般我们把它定义为常量放在类的最上面:


static final HiLogLabel label = new HiLogLabel(HiLog.LOG_APP, 0x00201, "MY_TAG"); 

上面有三个参数:
1)日志类型,我们的应用一般取一个常量值:HiLog.LOG_APP,表示是第三方应用。
2)服务域,16进制整数形式,取值范围是0x0 ~ 0xFFFFF。一般情况下,我们建议把这5个16进制数分成两组,前面三个数表示应用中的模块编号,后面两个表示模块中的类的编号。
3)一个字符串常量,它标识方法调用的类或服务行为。一般情况下就写类的名字,一般我可用这个标记对日志进行过滤。


2. 日志的级别,和其他日志一样,HiLog也分成了几个日志级别,由上到下信息越严重:
1)debug:调试信息
2)info:普通信息
3)warn:警告信息
4)error:错误信息
5)fatal:致命错误信息


3. 使用


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这两个符号我们可用理解为占位符,真正打印到控制台上的值是后面的变量:

鸿蒙应用开发入门(五):日志HiLog的使用-鸿蒙开发者社区private:表示私有的,我们在开发阶段的日志中是看得见的,但是运行到手机上后,手机的控制台是隐藏的,看不见的。
public:表示共有的,哪里都看得见,不受限制。
s:表示字符串
d:表示数字

5.3. 写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());
    }
}


©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
其它
头像

宋你一朵小红花

我还没有写个人简介......

881

帖子

0

提问

1679

粉丝

关注
热门推荐
地址:北京市朝阳区北三环东路三元桥曙光西里甲1号第三置业A座1508室 商务内容合作QQ:2291221 电话:13391790444或(010)62178877
版权所有:电脑商情信息服务集团 北京赢邦策略咨询有限责任公司
声明:本媒体部分图片、文章来源于网络,版权归原作者所有,我司致力于保护作者版权,如有侵权,请与我司联系删除
京ICP备:2022009079号-2
京公网安备:11010502051901号
ICP证:京B2-20230255