开发 Flutter 应用时,查看网络请求总是件麻烦事。连接电脑用 Charles/Fiddler 抓包?配置繁琐还容易断连。用 Logcat 看日志?刷屏太快眼睛看花。
自测方便 前端还是后端的问题 一目了然
于是,我决定自己造一个轮子:
easy_debug。
✨ what is Easy Debug?
easy_debug 是一个 纯 Dart 编写的 Flutter 应用内网络调试工具。
它不需要你连接电脑,不需要配置代理,无论是在真机、模拟器还是 Web 端,只要集成进去,网络请求的一举一动都在你的掌控之中。
简单来说,它长这样:(原谅粗糙的设计😅)
🚀 核心亮点
1. 💎 颜值即正义 (Glassmorphism UI)
拒绝千篇一律的黑色控制台!采用了现代的毛玻璃 (Frosted Glass) 拟态设计,半透明的悬浮窗不仅显得“高级”,而且不会完全遮挡底部内容,调试体验极佳。
2. ⚡️ Pure Dart,全平台制霸
很多调试插件依赖原生代码 (Java/Kotlin/Swift),导致在 Web 或 Desktop 平台无法使用。
easy_debug 100% 由 Dart 编写。这意味着:
- Android / iOS:完美运行。
- Web:直接能用。
- MacOS / Windows / Linux:统统支持!
3. 🛠 实用功能,直击痛点
- 悬浮球 (Floating Overlay):一键呼出,位置随心拖动,不占地。
- 智能筛选 (Smart Filtering):提供 All / Success / Error 三个 Tab。只想看报错?点一下 Error,世界瞬间清净。
- 详情透视 (Detailed Inspection):Headers、Body、状态码、耗时...所有细节一览无余,而且支持 JSON 格式化高亮显示。
- 一键复制 (Smart Copy):详情页右上角自带复制按钮,它会智能识别你当前看的是 Request 还是 Response,直接把整理好的 JSON 复制到剪贴板,发给后端甩锅只需 1 秒。
- 自动清理:支持手动一键清空日志,强迫症福音。
📦 极速接入 (30秒搞定)
第一步:添加依赖
在 pubspec.yaml 中添加:
dependencies:
easy_debug: ^0.0.1
第二步:配置 Dio
把你常用的 Dio 实例加上拦截器:
dio.interceptors.add(EasyDebugDioInterceptor());
第三步:全局注入
在 MaterialApp 的 builder 中包裹一下:
MaterialApp(
// 1. 必填:加上 builder
builder: (context, child) {
return EasyDebugWidget(child: child!);
},
// 2. 选填:加上 observer 可以更智能地处理页面跳转
navigatorObservers: [
EasyDebugNavigatorObserver(),
],
home: HomePage(),
);
搞定!现在运行 App,你会看到一个可爱的小甲虫 🐞 悬浮球,点开它,新世界的大门打开了。
🔗 开源地址
项目已发布到 pub.dev,且代码完全开源。如果你觉得好用,或者单纯觉得 UI 好看,欢迎 Star 支持一下!
- Pub: pub.dev/packages/ea…
- GitHub: github.com/JasonBoolea…
💬 写在最后
造这个轮子的初衷就是为了让调试变得“赏心悦目”一点。如果你在使用过程中遇到 Bug,或者有更骚的 UI 建议,欢迎在 GitHub 提 Issue,或者在评论区留言,我们一起把它打磨得更完美!
Created by [JasonBoolean]