【软通动力】HarmonyOS三方件开发指南(4)——Logger组件 原创 精华
软通田可辉
发布于 2021-1-14 09:06
浏览
18收藏
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和日志存储功能。
项目源代码地址:https://github.com/isoftstone-dev/Logger_Harmony
欢迎交流:HWIS-HOS@isoftstone.com
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2021-3-2 09:20:00修改
赞
28
收藏 18
回复
相关推荐
放码好评,放到附件里就更好了,看完直接下载🤩
臣附议
请问目前是否支持xml格式日志输出?
同意。
感谢宝贵意见
赞,期待开发指南系列的后续更新
不支持,目前harmonyos api 不支持xml解析。
不支持 harmonyos sdk里面貌似把Java的xml解析和组成 还没封装进来 具体可以去看看
臣遵旨
请问:使用lib时如何自定义日志目录?
您可以在CsvformatStrategy.java中找到该目录;如果要更改目录,则必须自己更改代码。
感谢老师关注,开发指南系列后续还有持续规划
辉哥威武!
欢迎常来交流学习
辉哥威武!
辉哥威武!
欢迎常来交流学习
欢迎常来交流学习
自定义HarmonyLogAdapter适配鸿蒙,目前只支持控制台Log,不支持写文件
https://gitee.com/andych008/logger_ohos
没人发现,楼主分享的github连接时android项目,而非鸿蒙的吗?