Flutter日志管理与表情符号插件kaomoji_lumberdash的使用

Flutter日志管理与表情符号插件kaomoji_lumberdash的使用

kaomoji_lumberdash

一个面向weebs的日志管理客户端 ヽ(♡‿♡)ノ


使用说明

kaomoji_lumberdash 是一个结合了日志管理和可爱表情符号的日志工具。它可以帮助开发者在控制台输出日志的同时,增加一些趣味性。

安装方法

pubspec.yaml 文件中添加依赖:

dependencies:
  kaomoji_lumberdash: ^x.x.x

然后运行以下命令以安装依赖:

flutter pub get

示例代码

以下是一个完整的示例,展示如何使用 kaomoji_lumberdash 插件来记录不同级别的日志,并附带表情符号。

示例代码(lib/main.dart

import 'package:kaomoji_lumberdash/kaomoji_lumberdash.dart';

void main() async {
  // 初始化 kaomoji_lumberdash 实例
  final kaomojiLumberdash = KaomojiLumberdash();

  // 将 kaomoji_lumberdash 添加到日志管理器中
  putLumberdashToWork(
    withClients: [kaomojiLumberdash],
  );

  // 记录普通信息日志
  logMessage('系统正在启动。', extras: {'进度': '25.0%'});

  // 记录警告日志
  logWarning('内核似乎检测到无效的内存访问!');

  // 记录错误日志并包含堆栈跟踪
  logError(NullThrownError(), stacktrace: StackTrace.current);

  // 记录致命错误日志
  logFatal('由于段错误,内核即将崩溃。');
}

// 自定义异常类
class NullThrownError implements Exception {}

输出示例

运行上述代码后,控制台将输出以下带有表情符号的日志信息:

Senseeeeei! You have received a message. Want me to read it?
Okay, here it goes: (°◡°♡)

* 系统正在启动。
The message also contains several attachements:

* 进度: 25.0%
Mmmmaster, I don't want to worry you, but I think we may have a problem (*μ_μ).
I was reported of the following warning:

* 内核似乎检测到无效的内存访问!,
Oh nooooo it seems your program broke a piece or two and threw an exception (。•́︿•̀。)
Don't worry, I'm here to help! ٩(。•́‿•̀。)۶. I've kept the exception just so you can repair it later. (b ᵔ▽ᵔ)b

* The exception is as follow:
* Throw of null.

Oh! And here's also the stacktrace: ( ˙▿˙ )

#0      main (package:example/main.dart:14:54)
#1      _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:283:19)
#2      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)

Oh no, this is bad. (个_个)
I was contacted that a fatal error occurred within the app. This may be the last message that I exchange with you. Before I release the message, I got to ask you: Was I a good bot? (。•́︿•̀。)
The fatal messages says:

* 由于段错误,内核即将崩溃。

更多关于Flutter日志管理与表情符号插件kaomoji_lumberdash的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter日志管理与表情符号插件kaomoji_lumberdash的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


在使用 Flutter 开发应用时,日志管理和调试是非常重要的一部分。lumberdash 是一个 Flutter 日志管理插件,而 kaomoji_lumberdash 是一个基于 lumberdash 的插件,它允许你在日志中使用表情符号(Kaomoji)来增强日志的可读性和趣味性。

1. 安装依赖

首先,你需要在 pubspec.yaml 文件中添加 lumberdashkaomoji_lumberdash 的依赖:

dependencies:
  flutter:
    sdk: flutter
  lumberdash: ^3.0.0
  kaomoji_lumberdash: ^1.0.0

然后运行 flutter pub get 来安装依赖。

2. 初始化日志管理

在你的应用的入口文件(通常是 main.dart)中,初始化 lumberdash 并配置 kaomoji_lumberdash 作为日志处理器。

import 'package:flutter/material.dart';
import 'package:lumberdash/lumberdash.dart';
import 'package:kaomoji_lumberdash/kaomoji_lumberdash.dart';

void main() {
  // 初始化 Lumberdash 并配置 KaomojiLumberdash
  putLumberdashToWork(withClients: [KaomojiLumberdash()]);

  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

3. 使用日志记录

在你的应用代码中,你可以使用 logMessage, logWarning, logError, 和 logFatal 来记录不同级别的日志。

import 'package:flutter/material.dart';
import 'package:lumberdash/lumberdash.dart';

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Kaomoji Lumberdash Demo'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            ElevatedButton(
              onPressed: () {
                logMessage('This is a message (✿◠‿◠)');
              },
              child: Text('Log Message'),
            ),
            ElevatedButton(
              onPressed: () {
                logWarning('This is a warning (⊙_☉)');
              },
              child: Text('Log Warning'),
            ),
            ElevatedButton(
              onPressed: () {
                logError('This is an error (╯°□°)╯︵ ┻━┻');
              },
              child: Text('Log Error'),
            ),
            ElevatedButton(
              onPressed: () {
                logFatal('This is a fatal error (×_×)');
              },
              child: Text('Log Fatal'),
            ),
          ],
        ),
      ),
    );
  }
}

4. 运行应用

运行你的 Flutter 应用,点击按钮查看日志输出。你会看到每条日志都带有对应的 Kaomoji 表情符号,使得日志更加有趣和易读。

5. 自定义 Kaomoji

如果你想要自定义 Kaomoji,可以通过继承 KaomojiLumberdash 类并重写 getKaomoji 方法来实现。

class CustomKaomojiLumberdash extends KaomojiLumberdash {
  @override
  String getKaomoji(LogLevel level) {
    switch (level) {
      case LogLevel.message:
        return '(^▽^)';
      case LogLevel.warning:
        return '(⊙_⊙)';
      case LogLevel.error:
        return '(╥﹏╥)';
      case LogLevel.fatal:
        return '(×_×)';
      default:
        return '(`・ω・´)';
    }
  }
}

然后在初始化时使用自定义的 CustomKaomojiLumberdash

void main() {
  putLumberdashToWork(withClients: [CustomKaomojiLumberdash()]);

  runApp(MyApp());
}
回到顶部