Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Mana is an in-app debug kits platform for Flutter. Flutter应用内调试工具平台

License

Notifications You must be signed in to change notification settings

ozyl/flutter_mana

 
 

Repository files navigation

Flutter Mana

pub package pub package Last Commit

Flutter 应用内调试工具平台. an in-app debug kits platform for Flutter.

因为flutter_ume不维护,项目因此而生,mana的名字来自于一部国漫《灵笼》中的玛娜设定,强烈推荐!

尽量在开发环境使用,部分插件只在开发环境才能生效!!!

使用

  • 安装
flutter pub add flutter_mana
flutter pub add flutter_mana_kits
  • 代码中使用
import 'package:flutter/material.dart';
import 'package:flutter_mana/flutter_mana.dart';
import 'package:flutter_mana_kits/flutter_mana_kits.dart';


void main() async {
  ManaPluginManager.instance
    ..register(ManaVisualHelper())
    ..register(ManaGrid())
    ..register(ManaLicense())
    ..register(ManaPackageInfo())
    ..register(ManaMemoryInfo())
    ..register(ManaShowCode())
    ..register(ManaLogViewer())
    ..register(ManaDeviceInfo())
    ..register(ManaColorSucker())
    ..register(ManaDioInspector())
    ..register(ManaWidgetInfoInspector())
    ..register(ManaFpsMonitor())
    ..register(ManaSharedPreferencesViewer())
    ..register(ManaAlignRuler());

  runApp(ManaWidget(child: MyApp()));
}

class App extends StatelessWidget {
  const App({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Example',
      home: Text('Example'),
    );
  }
}

插件&使用

🟢 全部功能在正式与开发环境生效  
🟡 部分功能在正式环境生效  
🔴 全部功能仅在开发环境生效  
插件
面板 日志查看器 设备信息
面板 日志查看器 设备信息
颜色吸管 Dio网络检查器 Widget详情
颜色吸管 Dio网络检查器 Widget详情
帧率监控 SharedPreferences查看器 标尺
帧率监控 SharedPreferences查看器 标尺
显示代码 内存信息 包信息
显示代码 内存信息 包信息
许可 网格 视觉辅助
许可 网格 视觉辅助

插件开发

flutter pub add flutter_mana
  • 实现接口
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_mana/flutter_mana.dart';

/// png to base64
const _iconData =
    r'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';

final _iconBytes = base64Decode(_iconData);

final iconImage = MemoryImage(_iconBytes);

/// 自定义接口
class Demo extends ManaPluggable {

  Demo();

  @override
  Widget? buildWidget(BuildContext? context) {
    return Container(
      color: Colors.white,
      width: double.infinity,
      height: double.infinity,
      child: Center(child: Text('当前的插件是: demo')),
    );
  }

  @override
  String getLocalizedDisplayName(Locale locale) {
    switch (locale.languageCode) {
      case 'zh':
        return '例子';
      default:
        return 'Demo';
    }
  }

  @override
  ImageProvider<Object> get iconImageProvider => iconImage;

  @override
  String get name => 'demo';

  @override
  void onTrigger() {}

  @override
  Future<void> initialize() async {}
}
  • 注册接口使用
void main() {
  ManaPluginManager.instance.register(Demo());

  runApp(ManaWidget(child: MyApp()));
}

class App extends StatelessWidget {
  const App({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Example',
      home: Text('Example'),
    );
  }
}

工具

参考

About

Mana is an in-app debug kits platform for Flutter. Flutter应用内调试工具平台

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 87.6%
  • C++ 5.8%
  • CMake 4.8%
  • Ruby 0.7%
  • Swift 0.5%
  • C 0.3%
  • Other 0.3%