在閑魚推進 Flutter 化過程當中,更加複雜的頁面場景逐漸暴露了老方案的侷限性和一些問題。所以我們啟動了代號 FlutterBoost(向C++ Boost庫致敬)的新混合技術方案。這次新的混合方案我們的主要目標有:
跟老方案類似,新的方案還是採用共享引擎的模式實現。主要思路是由 Native 容器 Container 通過消息驅動 Flutter 頁面容器 Container,從而達到 Native Container與 Flutter Container 的同步目的。我們希望做到 Flutter 渲染的內容是由 Naitve 容器去驅動的。
簡單的理解,我們想做到把 Flutter 容器做成瀏覽器的感覺。填寫一個頁面地址,然後由容器去管理頁面的繪製。在 Native 側我們只需要關心如果初始化容器,然後設置容器對應的頁面標誌即可。