为了账号安全,请及时绑定邮箱和手机立即绑定

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

标签:
HarmonyOS

一门新的开发语言在诞生初期,由于它本身的特性和使用人数暂时较少,会容易出现一些大家不太容易理解的问题,或者说有一些坑。今天就详细分享一下仓颉开发语言中的日志打印相关内容,带大家踩一踩坑。


AppLog

在新创建的项目中,Button的点击事件就写好了一行打印日志的代码:

https://img1.sycdn.imooc.com/f4801a6809526a5809580330.jpg

和ArkTs不同,仓颉语言中没有了console.log,这里用的是AppLog.info。

这时候问题就出现了,很多同学发现点击按钮之后并没有打印任何东西,幽蓝君也一样,当时因为这个问题困扰了很久

https://img1.sycdn.imooc.com/fa75526809526a5810800246.jpg

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

https://img1.sycdn.imooc.com/6783ee6809526a5810800121.jpg

那么AppLog到底是什么呢,为什么会出现这种问题。

仓颉语言无法通过command点进去看代码,我们不知道AppLog的任何信息。不过幽蓝君还是从代码提示中看出了一点端倪:

https://img1.sycdn.imooc.com/6b01276809526a5810800131.jpg

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

https://img1.sycdn.imooc.com/cf29ec6809526a5910800274.jpg


Hilog

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

Hilog.info(0x0000, 'hello hilog', 'this is an info level log');

这时候模拟器中可以正常打印日志了。

https://img1.sycdn.imooc.com/a468286809526a5910800175.jpg

print

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

https://img1.sycdn.imooc.com/f5123a6809526a5910800678.jpg

这种方式在vscode是可以正常打印的。println是基于print的封装,所以在这里使用print也同样有效。 

println和print在DevEco中也能写出来,但是是不能打印的,因为DevEco只能打印Hilog的内容,而print和Hilog没什么关系。

以上就是仓颉开发语言中的日志打印,希望对大家有所帮助。

##HarmonyOS语言##仓颉##购物#


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
1
获赞与收藏
1

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消