IDC

鸿蒙HarmonyOS三方件开发指南(4)-Logger组件

作者:admin 2021-07-08 我要评论

想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区 https://harmonyos.51cto.com/#zz 1. Logger功能介绍 1.1. 组件介绍: Logger是一款log日...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

想了解更多内容,请访问:

51CTO和华为官方战略合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#zz

1. Logger功能介绍

1.1. 组件介绍:

Logger是一款log日志打印组件,输出的日志在开发工具的Hilog控制台中, 结构比较清晰可分辨。

1.2. 手机模拟器上运行效果:


2. Logger使用方法

2.1在目录build.gradle下

  1. implementation project(":Logger_harmony"

2.2在项目的MyApplication->onInitialize方法中添加(Log级别必须是debug以上):

  1. Logger.addLogAdapter(new HarmonyOsLogAdapter() { 
  2.  
  3.     @Override 
  4.  
  5.     public boolean isLoggable(int priority, @org.jetbrains.annotations.Nullable String tag) { 
  6.  
  7.         return BuildConfig.DEBUG; 
  8.  
  9.     } 
  10.  
  11. }); 

2.3 基本用法

  1. Logger.i("需要打印的日志信息"); 

 

2.4 tag标签用法

  1. Logger.t("tag标签").i("需要打印的日志信息"); 

 

2.5 Json用法

  1. Logger.json("{\"key\": 3, \"value\": something}"); 

 

2.6 List用法

  1. List<Integer> list = new ArrayList<>(); 
  2.  
  3. for (int i = 0; i < 5; i++) { 
  4.  
  5.     list.add(i); 
  6.  
  7.  
  8. Logger.i(Arrays.asList(list)); 

 

2.7 进阶用法,可以打印出事件分发方法

  1. FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder() 
  2.  
  3.         .showThreadInfo(false)  // (Optional) Whether to show thread info or notDefault true 
  4.  
  5.         .methodCount(0)         // (Optional) How many method line to show. Default 2 
  6.  
  7.         .methodOffset(7)        // (Optional) Hides internal method calls up to offset. Default 5 
  8.  
  9.         .logStrategy(new LogcatLogStrategy()) // (Optional) Changes the log strategy to print outDefault LogCat 
  10.  
  11.         .tag("My custom tag")   // (Optional) Global tag for every log. Default PRETTY_LOGGER 
  12.  
  13.         .build(); 

  1. Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy)); 
  2.  
  3. Logger.i("需要打印的日志信息"); 

 

2.8 日志保存到分布式目录中,调用方法(一定要添加项目的读写权限)

  1. Logger.addLogAdapter(new DiskLogAdapter(context)); 

2.9 分布式目录创建方式

  1. File distDir = context.getDistributedDir(); 
  2.  
  3. String filePath = distDir + File.separator + "logger.csv"

目前日志只支持4种级别打印,等待harmonyOs Api后续更新

  1. INFO ,WARN,ERROR,ASSERT 

3. Logger开发实现

Logger通过封装hoarmonyos 的Hilog组件及其打印日志的各种方法,实现Hilog的基本用法, 添加了json ,list和日志存储功能。

项目源代码地址:https://github.com/orhanobut/logger

©著作权归作者和HarmonyOS技术社区共同所有,如需转载,请注明出处,否则将追究法律责任

想了解更多内容,请访问:

51CTO和华为官方战略合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#zz


本文转载自网络,原文链接:https://harmonyos.51cto.com/#zz

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • []*T *[]T *[]*T 傻傻分不清楚

    []*T *[]T *[]*T 傻傻分不清楚

  • B站,牛逼!

    B站,牛逼!

  • 如何保证 Serverless 业务部署更新的一

    如何保证 Serverless 业务部署更新的一

  • Room 中的数据库自动迁移功能

    Room 中的数据库自动迁移功能

腾讯云代理商
海外云服务器