FlutterflutterFlutter中文社区

flutter 优秀日志库 ulog

2021-09-18  本文已影响0人  王二蛋和他的狗

ulog

ulog的想法和代码风格,设计方式与 Android logger库几乎无差别,差别在于ulog第一个版本不支持文件打印,但支持动态json库配置
库源码:https://github.com/smartbackme/ulog

v0.0.1只有基础的console打印,后面将会增加文件打印

开始使用

添加库
dependencies:
flutter_ulog: ^0.0.1

//Initialization
//构建基础adapter isLoggable可以通过不同type来拦截打印,或者关闭打印
class ConsoleAdapter extends ULogConsoleAdapter{
  @override
  bool isLoggable(ULogType type, String? tag) => true;
}
//初始化配置json库
    ULog.init((value){
      return ""; 
    });
    //添加打印适配器
    ULog.addLogAdapter(ConsoleAdapter());

输出基别

  verbose
  debug
  info
  warning
  error

如何输出
ULog.v("12321321\ndfafdasfdsa\ndafdasf");
    ULog.d("12321321");
    ULog.i("12321321");
    ULog.w("12321321");
    ULog.e("1321231",error: NullThrownError());
    var map = [];
    map.add("1232");
    map.add("1232");
    map.add("1232");
    map.add("1232");
    ULog.e(map,error: NullThrownError());
    ULog.json(''' 
     {
      "a1": "value",
    "a2": 42,
    "bs": [
    {
    "b1": "any value",
    "b2": 13
    },
    {
    "b1": "another value",
    "b2": 0
    }
    ] 
    }
    ''');

    ULog.e("1321231",error: NullThrownError(),tag: "12312");
    ULog.e("1232132112321321x");

优点:

  1. 可打印json字符串
  2. 打印行数很多时候会自动折行
  3. 可以打印模型
  4. 颜色区分
  5. 可扩展性强

打印效果:
打印分级


json打印

base_image2.png

折行打印


base_image3.png
上一篇下一篇

猜你喜欢

热点阅读