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

举报
yd_271872561 发表于 2025/06/25 15:28:23 2025/06/25
【摘要】 一门新的开发语言在诞生初期,由于它本身的特性和使用人数暂时较少,会容易出现一些大家不太容易理解的问题,或者说有一些坑。今天就详细分享一下仓颉开发语言中的日志打印相关内容,带大家踩一踩坑。AppLog在新创建的项目中,Button的点击事件就写好了一行打印日志的代码:和ArkTs不同,仓颉语言中没有了console.log,这里用的是AppLog.info。这时候问题就出现了,很多同学发现点击...
一门新的开发语言在诞生初期,由于它本身的特性和使用人数暂时较少,会容易出现一些大家不太容易理解的问题,或者说有一些坑。今天就详细分享一下仓颉开发语言中的日志打印相关内容,带大家踩一踩坑。
AppLog
在新创建的项目中,Button的点击事件就写好了一行打印日志的代码:

392511813.png


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

4009736257.png


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

3714905551.png


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

1519321482.png


可以看出AppLog也还是基于Hilog的封装,而DevEco的控制台打印的就是Hilog的内容。而且作为初始化代码中推荐的打印方式,在模拟器无法打印,我只能理解为这是一个坑。

1062500826.png


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

4235563000.png


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

2764180256.png


这种方式在vscode是可以正常打印的。println是基于print的封装,所以在这里使用print也同样有效。 
println和print在DevEco中也能写出来,但是是不能打印的,因为DevEco只能打印Hilog的内容,而print和Hilog没什么关系。
以上就是仓颉开发语言中的日志打印,希望对大家有所帮助。
##HarmonyOS语言##仓颉##购物#
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。