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 工具进行调试插件的开发。

参赛须知

  1. 提交作品需要符合「有效作品标准」,对不符合标准的参赛作品将无资格参与评奖;
  2. 若需要修改 flutter_ume 代码以支持插件能力,请复刻 (Fork) flutter_ume GitHub 仓库、修改代码,并向 flutter_ume 仓库提交拉取请求 (Pull Request),在提交作品的邮件正文中添加拉取请求的 URL 地址;
  3. 对于存在代码相似、创意相同、功能类似的参赛作品,以提交时间为评选依据;
  4. 比赛组委会将在参赛作品评选结束后通过邮件联系参赛选手,请务必保持邮箱畅通;
  5. 本次作品需要通过邮件形式提交,开发者将最终作品以压缩包以附件的形式,发送至:ume-kits-competition@bytedance.com

有效作品标准

  • 参赛作品压缩包中必须具备 pubspec.yamlREADME.md 文件与 libtestscreenshots 目录,若为 plugin 则还包括对应平台的 native 代码目录;
  • 参赛作品代码需要 支持空安全,最低支持 Flutter 2.0 版本,必须包含 test 单元测试;
  • 在提交作品前,请务必在 flutter_umeexample 工程中将参赛作品接入测试,并成功运行 example 工程,插件功能正常使用;
  • 参赛作品需要在作品提交阶段内 (5 月 30 日 23:59 之前) 发送到参赛专用邮箱 ume-kits-competition@bytedance.com,以参赛邮箱接收到邮件的时间为准,不在活动提交时间内提交的作品无效;
  • 参赛作品一旦发送到参赛邮箱,即 认同该代码将以 MIT 协议开源,并贡献至 flutter_ume 开源仓库;
  • 参赛选手对参赛作品代码版权负责,对代码可能导致的版权、开源协议风险承担责任。

参赛步骤参考

  1. 创建插件包 flutter create -t <package 或 plugin> name_of_kit
  2. 在创建出来的包中,依赖 flutter_ume 进行开发;
  3. 开发完成后充分自测,在 test 目录中添加单元测试;
  4. 将插件演示效果截图或录屏保存到插件的 screenshots 目录下;
  5. pubspec.yamlREADME.md 文件与 libtestscreenshots 目录(若为 plugin 则还包括对应平台的 native 代码目录,如 iosandroidwebwindowsmacoslinux 等)一同压缩至 zip 压缩包,并以你的作品名称命名,如 name_of_kit.zip
  6. README.md 中编写文档;
  7. 将压缩包以附件的形式,发送至邮箱 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 插件开发竞赛的更多相关文章

  1. HDU 6467.简单数学题-数学题 (“字节跳动-文远知行杯”广东工业大学第十四届程序设计竞赛)

    简单数学题 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  2. HDU 6464.免费送气球-动态开点-权值线段树(序列中第first小至第second小的数值之和)(感觉就是只有一个状态的主席树) (“字节跳动-文远知行杯”广东工业大学第十四届程序设计竞赛)

    免费送气球 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  3. HDU 6463.超级无敌简单题-卡边界的暴力 (“字节跳动-文远知行杯”广东工业大学第十四届程序设计竞赛)

    超级无敌简单题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Sub ...

  4. 5年Android程序员面试字节跳动两轮后被完虐,请查收给你的面试指南

    大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助. 最近跟一个朋友聊天,他准备了几个月,刚刚参加完字节跳动面试,第二面结束后,嗯,挂了- 所以 ...

  5. 朋友的一年工作经验跳槽字节跳动社招经历分享(已拿offer)

    虽然已经临近年末,但是还是萌生要看新机会的想法,主要的原因是觉得在目前的岗位上技术增长遇到的瓶颈,因此想去做一些更有挑战的工作.因为仍然准备继续在深圳工作,因此选定了三家公司,腾讯.字节跳动和 sho ...

  6. 从字节跳动离职后,拿到探探、趣头条、爱奇艺、小红书、15家公司的 offer【转】

    前言 博主目前从事Android开发3年,前两年一直在抖音工作.我这篇文章并不是简单的描述一些面试中的题,或者总结一些Android的知识,而是想记录我整个的想法和准备的过程,以及一些心得体会,让大家 ...

  7. 仅一年工作经验成功跳槽字节跳动,腾讯并拿到字节的offer,全靠这份面经!

    前言 前几天由于工作的原因一直没怎么看私信,昨天在整理私信的时候看到了一个粉丝给我疯狂私信想要我帮忙整理一份大厂面经,说自己工作也有几年了想跳槽冲刺一下,但是不知道该怎么做好前期准备.我看到这个粉丝也 ...

  8. 两年Java,去字节跳动写Python和Go

    前言 2019年5月,在收到offer邮件的那一刻,我仍然不敢相信自己这一番际遇.经历了七场面试,终于得偿所望,拿到了字节跳动的offer. 做加入大厂的决定并不是巧合.在多年的职业生涯里,我曾多次对 ...

  9. 字节跳动实习面经分享(已拿offer附攻略)

    大家好,我是bigsai,今天给大家分享自己字节跳动面试经验分享. enum我面得岗位是后台实习开发,具体部门是懂车帝,总体感觉就是字节的流程真的好快,只要安排面试,那流程接着很快. 大概是上上周投递 ...

  10. 刷到血赚!字节跳动内部出品:722页Android开发《360°全方面性能调优》学习手册首次外放,附项目实战!

    前言 我们平时在使用软件的过程中是不是遇到过这样的情况:"这个 app 怎么还没下载完!"."太卡了吧!"."图片怎么还没加载出来!".&q ...

随机推荐

  1. 把python中的列表转化为字符串

    怎么把python中的列表转换为字符串: 1,列表中非字符串的元素的转换 方法一: 使用列表推导式进行转换 1 list=['hello',6,9,'beizhi'] 2 list=[str(i) f ...

  2. Linux服务器PBS任务队列作业提交脚本的使用方法

      本文介绍在Linux服务器中,通过PBS(Portable Batch System)作业管理系统脚本的方式,提交任务到服务器队列,并执行任务的方法.   最近,需要在学校公用的超算中执行代码任务 ...

  3. Mysql函数1-IFNULL

    IFNULL函数用于判断参数值是null时则返回指定内容. 原本 select goods_base_name,goods_id from goods where goods_id in (6,7,8 ...

  4. Jmeter参数化3-正则表达式提取

    如果你想要将jmeter上个接口返回的参数值传到下个接口请求参去,可用正则表达式来提取传递 1.首先得到jmeter接口的json返回结果 2.组件路径:线程组->右键添加->后置处理器- ...

  5. Netty的源码分析和业务场景

    Netty 是一个高性能.异步事件驱动的网络应用框架,它基于 Java NIO 构建,广泛应用于互联网.大数据.游戏开发.通信行业等多个领域.以下是对 Netty 的源码分析.业务场景的详细介绍: 源 ...

  6. 【JavaWeb】接口请求404的问题排查

    响应状态404:404 Page Not Found 根本原因: 服务器找不到这个地址描述的页面资源, 注意是页面资源 可能的出现的开发情况: 1.请求的资源可能真的不存在,是接口,也可以是页面 2. ...

  7. 【Project】原生JavaWeb工程 01 概述,搭建

    一.环境准备: 操作系统:Windows7 或者 Windows10 IDE集成环境:IDEA 2018版本或者更高 数据库:MySQL 5版本或者更高 服务器:Tomcat 8版本或者更高 二.数据 ...

  8. 【Nexus】Linux上的Maven私服搭建

    [1.安装Nexus] 需要Linux安装JDK运行,Nexus2版本JDK7,3版本JDK8 首先需要Nexus服务器文件 nexus-2.12.0-01-bundle.tar.gz 解压 tar ...

  9. 亲测可用的 Linux(Ubuntu18.04下)可运行的超级玛丽奥(gym-super-mario-bros)游戏的仿真环境—————————可用于强化学习算法的游戏模拟器环境

    与前文中的俄罗斯方块游戏一样都是可以用于强化学习算法的游戏模拟器,这里介绍的是超级玛丽奥(gym-super-mario-bros)游戏的仿真环境. Python库,代码地址: https://git ...

  10. 【转载】 t-SNE是什么? —— 使用指南

    原文地址: https://www.cnblogs.com/LuckBelongsToStrugglingMan/p/14161405.html 转者前言: 该文相当于一个  t-SNE  使用指南, ...