UME 是由字节跳动 Flutter Infra 团队出品和维护的 Flutter 应用内调试工具。通过在 Flutter 应用中加入 UME 工具,开发者们可以直接在应用内查看调试信息,而无需使用 IDE 和 Flutter DevTools 等工具。这将方便开发者们直接在应用内获取有用信息,进一步提升内部 Flutter 团队的研发、调试与验收效率。
截至目前,UME 已经在字节跳动内部使用近两年时间,助力内部二十多个业务线使用 Flutter 提升开发效率。去年 7 月底,UME 正式开源,提供了十个调试插件,覆盖 UI 检查、性能工具、代码查看、日志查看等功能。
作为一个开源项目,UME 的代码贡献来自字节跳动公司内部以及来自社区的开发者们。最新版本的 UME 共集成了 22 款插件,新加入功能和调试插件包括:插件间通信、快速接入嵌套的第三方调试工具、全屏布局边界查看功能,以及来自社区贡献的 cyclop
拾色工具插件、touch_indicator
触摸标识器和 dio_inspector
请求查看工具。
为了更好地帮助更多的开发者们通过应用内调试提升 Flutter 应用开发效率,字节跳动 Flutter Infra 团队于本月初 开启了基于 UME 的插件开发竞赛,邀请社区的开发者们基于 UME 工具进行调试插件的开发。
参赛须知
- 提交作品需要符合「有效作品标准」,对不符合标准的参赛作品将无资格参与评奖;
- 若需要修改
flutter_ume
代码以支持插件能力,请复刻 (Fork)flutter_ume
GitHub 仓库、修改代码,并向flutter_ume
仓库提交拉取请求 (Pull Request),在提交作品的邮件正文中添加拉取请求的 URL 地址; - 对于存在代码相似、创意相同、功能类似的参赛作品,以提交时间为评选依据;
- 比赛组委会将在参赛作品评选结束后通过邮件联系参赛选手,请务必保持邮箱畅通;
- 本次作品需要通过邮件形式提交,开发者将最终作品以压缩包以附件的形式,发送至:
ume-kits-competition@bytedance.com
有效作品标准
- 参赛作品压缩包中必须具备
pubspec.yaml
、README.md
文件与lib
、test
、screenshots
目录,若为plugin
则还包括对应平台的 native 代码目录; - 参赛作品代码需要 支持空安全,最低支持 Flutter 2.0 版本,必须包含 test 单元测试;
- 在提交作品前,请务必在
flutter_ume
的example
工程中将参赛作品接入测试,并成功运行example
工程,插件功能正常使用; - 参赛作品需要在作品提交阶段内 (5 月 30 日 23:59 之前) 发送到参赛专用邮箱
ume-kits-competition@bytedance.com
,以参赛邮箱接收到邮件的时间为准,不在活动提交时间内提交的作品无效; - 参赛作品一旦发送到参赛邮箱,即 认同该代码将以 MIT 协议开源,并贡献至
flutter_ume
开源仓库; - 参赛选手对参赛作品代码版权负责,对代码可能导致的版权、开源协议风险承担责任。
参赛步骤参考
- 创建插件包
flutter create -t <package 或 plugin> name_of_kit
; - 在创建出来的包中,依赖
flutter_ume
进行开发; - 开发完成后充分自测,在
test
目录中添加单元测试; - 将插件演示效果截图或录屏保存到插件的
screenshots
目录下; - 将
pubspec.yaml
、README.md
文件与lib
、test
、screenshots
目录(若为 plugin 则还包括对应平台的 native 代码目录,如ios
、android
、web
、windows
、macos
、linux
等)一同压缩至 zip 压缩包,并以你的作品名称命名,如name_of_kit.zip
; - 在
README.md
中编写文档; - 将压缩包以附件的形式,发送至邮箱
ume-kits-competition@bytedance.com
,标题为:“ume-kits-competition”。
活动评奖及奖品设置
按照参赛作品质量,比赛组委会将在全部有效作品中选出二十名优秀作品,颁予奖励,并设置参与奖五十名:
- 一等奖 1 名,奖品为:Pico Neo3 VR 一体机
- 二等奖 3 名,奖品为:苹果 HomePod mini 音响
- 三等奖 6 名,奖品为:大疆 OM 4 SE 磁吸手机云台
- 优秀极客奖 10 名,奖品为:200 元京东购物卡
- 参与奖 50 名,前 50 名提交有效作品的参赛者可获得 Flutter 官方周边
上述奖品名称涉及相关商标的,其商标归其生产商或公司所有
相关资料
- UME 开源地址,包含了如何体验 UME 以及如何为 UME 开发插件:
https://github.com/bytedance/flutter_ume