鸿蒙的底层代码是什么,调试鸿蒙App源代码的两种方式

更新时间:2023-07-14 03:50:14 阅读: 评论:0

鸿蒙的底层代码是什么,调试鸿蒙App源代码的两种⽅式
调试是开发App的必备技能,毕竟任何⼀个⽐较复杂的App都不可能⼀次编码成功,如果App的预期与⾃⼰期望的不同,或由于某些原因异常中断,就需要查中断的原因,这些都需要调试程序。
调试程序有多种⽅法,⽐较常⽤的有设置断点和输出⽇志两种⽅式,本⽂将详细介绍这两种调试App的⽅式。
1. 设置断点
如果认为需要跟踪的代码或bug在某⾏代码的附近,可以单击该⾏代码前⾯的部分为该⾏设置断点,这
猪和虎的属相合不合
时会在这⾏代码前⾯出现⼀个红点,如图1所⽰。
图1 设置断点我心永恒英文
然后点击上⽅⼯具栏中如图2所⽰的调试运⾏按钮。
图2 调试运⾏按钮
如果未遇到断点,点击该按钮会正常运⾏程序,⼀旦遇到断点,程序执⾏就会在断点处停⽌执⾏。知道按F7或F8键才继续⼀⾏⼀⾏执⾏程序,以便监控程序中的相关变量的状态。F7表⽰Step Into,F8表⽰Step Over。其中Step Into表⽰会跟踪到⽅法内部,例如,当前正在执⾏⼀个⽅法,按F7键会继续跟踪到⽅法内部,然后继续⼀⾏⼀⾏代码执⾏。Step Over会将⽅法当做⼀⾏代码执⾏,不会跟踪到⽅法内部。所以如果认为某⼀个⽅法肯定没有问题,就按F8,如果认为该⽅法可能会有⼀些问题,就按F7。著令
调试过程的效果如图3所⽰。我们可以看到,在下⽅的Variables视图中会显⽰相关变量的当前值。
图3 调试代码
转转不已
2. 输出⽇志
另外⼀种调试代码的⽅式就是输出⽇志,可以直接使⽤System.out.println(...)的⽅式将信息输出到LogCat视图中,例如,执⾏下⾯的代码,会在LogCat视图中看到如图4所⽰的信息。System.out.println("hello world");
合规培训图4在LogCat视图中输出的调试信息
HarmonyOS还提供了另外⼀种输出⽇志的⽅式,这就是HiLog类,该类提供了多个静态⽅法,⽤于输出不同级别的⽇志信息。这些静态⽅法如表1所⽰。
表1 HiLog类中⽤于输出⽇志信息的⽅法
蜀门手游攻略这5个⽅法的参数完全相同,例如,error⽅法的原型如下:
public static int error(HiLogLabel label, String format, args);
其中label参数表⽰输出⽇志的相关信息,类型是HiLogLabel对象,format表⽰要输出的⽇志⽂本(可以包括格式化占位符),args参数表⽰格式化的参数值,是可选的参数。
使⽤输出⽇志⽅法的案例如下:
HiLogLabel label = new HiLogLabel(HiLog.LOG_APP ,223, "MY_TAG");
<(label, "这是⼀⾏错误信息,原因:%{private}s","Url不可访问");
HiLog.warn(label,"这是⼀个警告,原因是:%{public}s", "变量的值可能是负数");网页游戏怎么赚钱
其中HiLogLabel构造⽅法的第1个参数表⽰⽇志类型,⽬前只能是HiLog.LOG_APP,后续会开放更多的⽇志类型。第2个参数是domain,就是⼀个整数类型,第3个参数是⽇志的标签。Domain和⽇志标签都会以某种形式显⽰在⽇志信息上。
在输出⽇志信息时,运⾏格式化⽇志信息,也就是为⽇志信息指定占位符。占位符需要在%和符号(如s、d)之间加{private}或{public},如果加{private},输出的信息就是,也就是说会隐藏占位符对应的信息,如果加{public},则输出原始的占位符信息。Domain在输出时被转换为⼗六进制数放到标签的前⾯,中间⽤斜杠(/)分隔。
执⾏这段代码,会在HiLog视图中输出如图5所⽰的⽇志信息。
图5 在HiLog视图输出⽇志信息
使⽤error⽅法会输出深红⾊的⽇志信息,⽇志的内容与其他⽅法输出的⽇志内容相同。不过要注意,
使⽤HiLog的相关⽅法输出的⽇志分为5个级别,分别是DEBUG(调试)、INFO(信息)、WARN(警告)、ERROR(错误)、FATAL(致命错误)。这5个级别分别⽤5个整数表⽰,这些整数都在HiLog类中定义,代码如下:
public final class HiLog {
吸油纸public static final int DEBUG = 3;
public static final int INFO = 4;
public static final int WARN = 5;
public static final int ERROR = 6;
public static final int FATAL = 7;
… …
}
如果要在HiLog视图中过滤这些级别的信息。只有不⼤于当前级别的信息才会给显⽰。例如,要过滤
WARN信息,只有DEBUG、INFO和WARN这3类信息才会被显⽰,由于ERROR和FATAL的值逗⽐WARN⼤,所以这两类信息不会被显⽰。

本文发布于:2023-07-14 03:50:14,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1080705.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:输出   信息   代码   调试   需要
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图