详解鸿蒙仓颉开发语言中的日志打印问题

一门新的开发语言在诞生初期,由于它本身的特性和使用人数暂时较少,会容易出现一些大家不太容易理解的问题,或者说有一些 bug。今天就详细分享一下仓颉开发语言中的日志打印相关内容,带大家看一看这些问题。
AppLog
在新创建的项目中,Button 的点击事件就写好了一行打印日志的代码:

和 ArkTs 不同,仓颉语言中没有了 console.log,这里用的是 AppLog.info。
这时候问题就出现了,很多同学发现点击按钮之后并没有打印任何东西,幽蓝君也一样,当时因为这个问题困扰了很久

最终发现 AppLog 打印的内容只能在真机看到,模拟器上是看不到的。

那么 AppLog 到底是什么呢,为什么会出现这种问题。
仓颉语言无法通过 command 点进去看代码,我们不知道 AppLog 的任何信息。不过幽蓝君还是从代码提示中看出了一点端倪:

可以看出 AppLog 也还是基于 Hilog 的封装,而 DevEco 的控制台打印的就是 Hilog 的内容。而且作为初始化代码中推荐的打印方式,在模拟器无法打印,不知道为什会这样。

Hilog
刚才说了 AppLog 是基于 Hilog 的封装,所以在仓颉中你依然可以使用 Hilog,这是鸿蒙系统中最基础的打印方式,console 和 AppLog 都是从 Hilog 封装而来。没有真机设备的同学可以使用这种方式:
这时候模拟器中可以正常打印日志了。

告诉大家一个秘密,使用 VSCode 创建的仓颉项目,和 DevEco 创建的项目大有不同,而且默认的打印日志方式是 println:

这种方式在 vscode 是可以正常打印的。println 是基于 print 的封装,所以在这里使用 print 也同样有效。
println 和 print 在 DevEco 中也能写出来,但是是不能打印的,因为 DevEco 只能打印 Hilog 的内容,而 print 和 Hilog 没什么关系。
以上就是仓颉开发语言中的日志打印,希望对大家有所帮助。
#HarmonyOS 语言 ##仓颉 ##购物 #
评论