基于Weex的Flutter项目框架

html-css018

基于Weex的Flutter项目框架,第1张

最近在做的一个项目,项目的前期采用Weex开发。但是随着交互复杂度的增加,Weex一处开发多处多处运行的特征并没有很好的体现,相反很多时候我们还是需要做IOS和Android的适配。如今火热的Flutter相比Weex和Rn来说,给出了更好的跨平台解决方案。所以我们设计了一套基于Weex实现,底层跑在Flutter Engine上的框架。

 底层的Runtime采用isolate engine,框架业务逻辑,Dom的解析逻辑和Render逻辑都跑在这里。

 渲染引擎采用Flutter的Skia,彻底剥离了Android和IOS的差异性.

    将Weex VirsualDom的解析都替换成Flutter Widget.

    设计基于Weex2Dart的Brider,使JS和Dart可以相互调用

    weex-demo的性能展示

release环境下采用AOT模式,性能会有质的飞跃。

Android-Release版本只有10m大小

相比Weex和Rn具有更好的性能,同时具有更好的跨平台性

相比Flutter,具有动态部署的能力(Flutter Release采用AoT模式并没有动态部署的能力,即使Debug版本也只是开发环境下才有动态化能力并没有可以实施项目的能力)

只需要会Weex开发或则Rn开发就可以,不需要额外学习Dart,已有的Weex项目可以无缝切换。

获取到当前设备缩放比,然后更改这个缩放比。Weex是使用流行的Web开发体验来开发高性能原生应用的框架。Weex框架能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS、安卓、YunOS及Web等多端部署。weex界面放大,获取到当前设备缩放比,然后更改这个缩放比就可以解决。