HarmonyOS三方件开发指南(4)——Logger组件
2024-10-11 06:55:39
目录:
1. Logger功能介绍
1.1. 组件介绍:
Logger是一款log日志打印组件,输出的日志在开发工具的Hilog控制台中, 结构比较清晰可分辨。
1.2. 手机模拟器上运行效果:
2. Logger使用方法
2.1在目录build.gradle下
implementation project(":Logger_harmony")
2.2在项目的MyApplication->onInitialize方法中添加(Log级别必须是debug以上):
Logger.addLogAdapter(new HarmonyOsLogAdapter() { @Override public boolean isLoggable(int priority, @org.jetbrains.annotations.Nullable String tag) { return BuildConfig.DEBUG; } });
2.3 基本用法
Logger.i("需要打印的日志信息");
2.4 tag标签用法
Logger.t("tag标签").i("需要打印的日志信息");
2.5 Json用法
Logger.json("{\"key\": 3, \"value\": something}");
2.6 List用法
List<Integer> list = new ArrayList<>(); for (int i = 0; i < 5; i++) { list.add(i); } Logger.i(Arrays.asList(list));
2.7 进阶用法,可以打印出事件分发方法
FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder() .showThreadInfo(false) // (Optional) Whether to show thread info or not. Default true .methodCount(0) // (Optional) How many method line to show. Default 2 .methodOffset(7) // (Optional) Hides internal method calls up to offset. Default 5 .logStrategy(new LogcatLogStrategy()) // (Optional) Changes the log strategy to print out. Default LogCat .tag("My custom tag") // (Optional) Global tag for every log. Default PRETTY_LOGGER .build(); Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy)); Logger.i("需要打印的日志信息");
2.8 日志保存到分布式目录中,调用方法(一定要添加项目的读写权限)
Logger.addLogAdapter(new DiskLogAdapter(context));
2.9 分布式目录创建方式
File distDir = context.getDistributedDir(); String filePath = distDir + File.separator + "logger.csv";
目前日志只支持4种级别打印,等待harmonyOs Api后续更新
INFO ,WARN,ERROR,ASSERT
3. Logger开发实现
Logger通过封装hoarmonyos 的Hilog组件及其打印日志的各种方法,实现Hilog的基本用法, 添加了json ,list和日志存储功能。
作者:软通动力乾
最新文章
- SQL Server 2008中的代码安全<;转>;
- 【JAE】JAE京东云擎部署首个Java应用
- AfxMessageBox和MessageBox区别
- Git – fatal: Unable to create ‘/.git/index.lock’: File exists错误解决办法
- Android 渗透测试学习手册 翻译完成!
- CentOS 6.8内核版本升级(升级至3.10)(转)
- setcookie各个参数详解
- BZOJ 1015: [JSOI2008]星球大战starwar 并查集
- PAT 65. A+B and C (64bit) (20)
- UVa10340.All in All
- BZOJ 2101: [Usaco2010 Dec]Treasure Chest 藏宝箱( dp )
- poll系统调用的内核态实现机制分析
- AspectCore中的IoC容器和依赖注入
- 《Android进阶之光》--Android新特性
- 【Luogu1414】又是毕业季II(数论)
- C++之标准输入输出
- 2.1命令行和JSON的配置「深入浅出ASP.NET Core系列」
- window开发环境常用操作
- Linux下Netty实现高性能UDP服务(SO_REUSEPORT)
- FPGA editor 的使用之一 ------ Probe探针
热门文章
- [SQL Server]多次为 &#39;派生表&#39; 指定了列 &#39;id&#39;
- 个人项目作业——wc.exe
- js原生方法filter实现
- STL——容器(Set &; multiset)的大小
- C# 好代码学习笔记(1):文件操作、读取文件、Debug/Trace 类、Conditional条件编译、CLS
- linux之文本编辑器vi常用命令
- mysql-创建用户报错ERROR 1396 (HY000): Operation CREATE USER failed for &#39;XXXX&#39;@&#39;XXXX&#39;
- UWP ListView添加不同样式
- HCIP --- BGP 总结
- npm install 报错解决办法