首页 文章详情

字节跳动出品的Flutter调试工具终于开源了!

Carson带你学习Android | 1174 2021-07-28 21:05 0 0 0
UniSMS (合一短信)

简介

UME 是字节跳动出品的一个Flutter应用内调试工具。


作用

在脱离 Flutter IDE 与 DevTools 的情况下,提供应用内调试的功能,能直接从应用内获取有价值的信息数据。


目前使用情况

UME 内部版在字节跳动已打磨了近一年时间:应用于近20个 App、拥有许多好用的插件功能,如 UI 检查、代码查看、日志查看、性能工具等。


开源情况

本次字节跳动团队发布的开源版 UME 提供了 十余个调试插件,包括 UI 检查、代码查看、日志查看、性能工具等。

  • Pub 地址:https://pub.dev/packages/flutter_ume
  • GitHub 地址:https://github.com/bytedance/flutter_ume

功能介绍

本文主要介绍三个核心功能:UI 检查、代码查看、日志查看、性能工具。

1. UI检查

作用:通过屏幕点选即可获取UI界面内所有控件的基本信息(如宽、高)、控件层级结构、颜色、坐标信息等,对开发自查UI控件属性及设计视觉验收提供十分大的便利。

2. 代码查看

  • 作用:通过用户输入关键字,通过遍历 scriptList 对 Library 进行模糊匹配,从而获取当前页面的代码 & 展示
  • 原理:基于 WidgetInspectorService 提取到creationLocation,,从而拿到当前页面的Library,最终通过 VM Service 获取对应的代码内容

3. 日志展示

  • 作用:在页面输出当前日志。
  • 原理:通过重定向Foundation包中的 debugPrint,实现对日志输出函数的插桩处理;通过统一面板提供筛选、导出等功能。

4. 性能查看

  • 作用:查看当前应用内性能相关信息,如内存占用大小、VM对象实例数量等。
  • 原理:引入Flutter 官方提供的性能浮层,脱离 DevTools从而实现查看性能浮层的功能。

至此,关于字节跳动出品的Flutter应用内调试工具UME讲解完毕。


「Carson每天带你学习一个Android知识点」,长按扫描关注公众号。同时,期待您精彩文章的投稿:真诚邀请您来分享

最后福利:学习资料赠送

  • 福利:由本人亲自撰写 & 整理的「Android学习方法资料」
  • 数量:10名
  • 参与方式:「点击文章右下角”在看“ -> 回复截图到公众号 即可,我将从中随机抽取」

    点击“在看”就能升职 & 加薪水哦!
good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter