業(yè)務背景:構建靈活的APP首頁頁面缎玫,支持功能模塊用戶自定義颈走、支持第三方接入膳灶,目前的實現(xiàn)只是實現(xiàn)規(guī)定的規(guī)則,接口對應的返回立由,不是所謂的動態(tài)化轧钓,故做了動態(tài)化方案的調研。
知乎移動端動態(tài)化方案 :Morph
關于移動端動態(tài)化方案這篇講得挺好 可惜框架沒有開源
鵝廠:MXFlutter
用JS開發(fā) 渲染用Flutter 邏輯層用v8/jscore解釋運行
優(yōu)點:邏輯動態(tài)化強
缺點:需要熟悉JS锐膜、該庫維護成本大 最后一次更新時間是20年七月份 目前flutter穩(wěn)定版本可以正常運行毕箍,引入解析引擎,看了下文件大小8M道盏,如果用此方案而柑,理論上會增大app的包大小
58:FAIR
json生成界面實現(xiàn) 邏輯方面弱
優(yōu)點:界面編寫較為簡單、該庫剛開源 更新頻率較高
缺點:定義邏輯方面弱
dynamic_widget
json生成界面實現(xiàn) 邏輯方面較弱
優(yōu)點:可以直接使用已經定義好常用的小部件生成JSON 開發(fā)成本低 該庫持續(xù)更新了兩年 目前依然在持續(xù)更新
邏輯方面有定義了一些事件比FAIR強點
缺點:定義邏輯方面沒有MXFlutter那么靈活
綜上根據(jù)我們目前的業(yè)務需求荷逞,使用dynamic_widget較為輕量級的框架可以完成目前需求媒咳。MXFlutter的話可能一個目的是用于APP的熱更新,能力很強种远,目前用于目前業(yè)務大材小用了涩澡。