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