Flutter 调研
1.背景介绍
Flutter 是一套高效的跨平台免费开源 SDK,能够帮助开发者用一套代码同时在 Android 和 iOS 上构建媲美原生体验的精良应用。网络
Flutter 1.0 的 stable 版已发布Flutter 1.2.1 • channel stable, Tools • Dart 2.1.2。架构
2.与RN差别性:
Flutter
- 使用自身的高性能渲染引擎(Skia)自绘
- debug 下支持 JIT,release 下是 AOT,编译成原生代码,能够经过 platformChannel 直接与原生通讯
- 有本身的布局方式,跟 FlexBox 有类似之处
- 体积,编译后iOS双架构15M+,Android单架构约7M
React Native
- rn代码最终转为原生控件,经过平台自身渲染
- 经过 JSCore 桥接与原生通讯
- 布局方式采用 yoga
- iOS 使用原生的 JavascriptCore 包较小,Android 内置 JSCore 包较大
3.能够实现的功能:
- Flutter 能够构建功能齐全的应用,包括使用摄像头、地理位置、网络、存储、第三方SDK。
- 支持绘图。
4.对Android和iOS两个平台支持的差别:
- Android 支持页面嵌套原生视图(AndroidView),
iOS 不支持iOS 经过 FlutterPlatformViews 协议实现
5.对动态化的支持:
目前不支持经过服务端下发代码实现动态更新。工具
6.Flutter组件对二次开发能力的支持
目前 Flutter 支持页面级别,全部元素都是 widget,支持经过后台下发的数据加载不一样的楼层。 对于单个 widget,支持经过初始化的接口展现不一样的形态。布局
7.Flutter 2019重点关注
- 核心和基础
- 易用性
- 生态系统
- 移动端以外的支持
- 动态更新
- 工具链
参考连接:性能
深刻了解Flutter界面开发debug
Flutter 2019 产品路线图3d