Kraken v0.8.0 發佈 — 支持 Flutter 2.0

img

官網:https://openkraken.com/css

Github: https://github.com/openkraken/krakenvue

自 2021年4月21日開源以來,北海(Kraken)就迎來了社區極大的關注。做爲一款兼容 W3C 標準的渲染引擎,打造出高性能,輕量,可擴展的產品一直是 Kraken 團隊奮鬥的目標。通過近 2 個多月的迭代,在修復了「億點點」的 bug 後,Kraken 終於迎來了 0.8.0 版本。react

更新內容

支持 Flutter 最新 stable 版本git

0.8 版本支持最新的 Flutter stable 版本 — v2.2.2,而且完美支持 Dart Null Safety。github

性能提高ide

在這個版本中,咱們優化了 Bridge 的運行性能,經過以前的調查研究咱們發現 JavaScript Bindings 中每一次屬性訪問的調用,都會對已知的屬性集合作一次額外的拷貝,所以咱們優化這塊的實現來減小沒必要要的拷貝。 經過這個的優化策略,Kraken 0.8 版本相比 0.7 版本提高了 10% 的首屏性能。佈局

img

Flexbox layout 性能加強性能

Flexbox 佈局的性能也獲得了加強,咱們新增了判斷樣式是否變動的策略來減小一些沒必要要的 layout 操做,進一步壓縮了提高了 flexbox 所消耗的時間,即便頁面中存在多層 flexbox 嵌套的狀況,也能快速生成頁面。flex

新的 HTML 標籤和新的 CSS 屬性單位優化

在標籤和 CSS 能力方面,咱們在 0.8.0 版本添加 h1-h6,strong 等經常使用 HTML 語義話標籤的支持,而且新增了 vmin & vmax CSS 單位,同時還支持文本樣式的繼承。

在佈局能力上,咱們新增了 margin 雙邊距合併的,雖然這個功能在 W3C 小組看來是個 design mistake,可是咱們依然打算去支持它,提供兼容 W3C 標準的渲染能力始終是 Kraken 的主要目標。

image-20210702221853035

大量問題修復

開源以後,社區同窗反饋了不少 Kraken 使用上的問題,其中包括集成應用黑/白屏,vue/react 頁面沒法運行,事件冒泡不符合 W3C 標準行爲,以及一些其餘的報錯問題。

在 v0.8.0 版本,上訴的問題中都已經被解決,在這裏還要再次感謝社區用戶的支持。若是沒有大家的幫助,咱們作不到這些。

社區使用狀況

在 Kraken 開源以後,有多家公司都向 Kraken 團隊表示,他們將嘗試接入 Kraken 到他們的 App 中去,目前已知的公司包括:

  1. 優酷
  2. 高德地圖
  3. QQ 音樂
  4. 陸金所
  5. 塗鴉科技

若是你的產品也在嘗試使用 Kraken,歡迎在評論區進行回覆。

What's Next

目前 Kraken 團隊的首要目標是提供極致的啓動性能,咱們將在下個版本(0.9)推出更快的技術方案來提高應用的啓動性能:

  • 支持 Quickjs,提供 Bytecode 加載支持。
  • 支持 HTML 文本格式,支持 SSR 渲染方案。

歡迎持續關注 Kraken 的進展,若是你有任何和 Kraken 有關的問題,歡迎在 Kraken 的 Github Repo 上發起討論。

相關文章
相關標籤/搜索