7大平台
windows
mac OS
linux
android
ios
web
embedded
www.flutterfolio.com 需要注册
web 平台优化、进入稳定版
- 3个方向
- pwa: 缓存、push 推送服务、桌面快捷、消息提示
- spa: 单页程序类似 vue react
- expanding mobile: 快速迁移 app、复用代码
- 2D 3D 渲染 WebGL Skia WebAssembly Canvas
- 稳定的版本
- irobot 基于 flutter 构建
- 技术架构
- 性能
- HTML renderer: HTML 渲染器: Uses a combination of HTML elements, CSS, Canvas elements, and SVG elements. This renderer has a smaller download size. 使用 HTML 元素、 CSS、 Canvas 元素和 SVG 元素的组合
- CanvasKit renderer: CanvasKit 渲染器: This renderer is fully consistent with Flutter mobile and desktop, has faster performance with higher widget density, but adds about 2MB in download size.
- 演示项目
- 编辑器
https://rive.app/ - 动画
https://flutterplasma.dev/ - invoice
https://www.invoiceninja.com
组件库升级、对 ios 支持加强
- 新增 iOS 功能
- CupertinoSearchTextField
- CupertinoFormSection、CupertinoFormRow 和 CupertinoTextFormFieldRow
https://api.flutter.cn/flutter/cupertino/CupertinoFormSection-class.html
https://api.flutter.cn/flutter/cupertino/CupertinoFormRow-class.html
https://api.flutter.cn/flutter/cupertino/CupertinoTextFormFieldRow-class.html
flutter支持折叠屏
- 这个支持有点鸡肋(个人看法哈)
混合编程
- 将 Flutter 集成到现有应用
- 过去,额外 Flutter 实例的内存占用量与第一个 Flutter 实例相同。在 Flutter 2 中,我们将创建额外 Flutter 引擎的静态内存占用量降低了约 99%,使每个实例的占用量大约为 180kB。
Dart Null Safety
-
Dart 是一种类型安全的语言,这意味着当开发者获取某种类型的变量时,编译器可以保证它是该类型,但是类型安全本身不能保证变量不是 null。
-
Null errors 非常常见的问题,在 GitHub 上 可以搜索到成千上万由于 null 导致 Dart 代码出现异常的问题,甚至有成千上万的 commits 试图解决这些问题。
void main() {
ps(null);
}
void ps(List<String> files) {
for (var file in files) {
print(file.isEmpty());
}
}
- 目前在根目录的 analysis_options.yaml 添加如下配置就可以开启 null safety,另外 Flutter 需要 dart sdk 2.9 。
analyzer:
enable-experiment:
- non-nullable
flutter DevTools 开发工具升级
- 性能监控
https://flutter.dev/docs/perf/rendering/ui-performance - Invert Oversized Images
能够轻松发现所显示的分辨率低于其实际分辨率的图像,这有助于追踪应用过大和内存占用过多等情况。
若要启用此功能,请在 Flutter Inspector 中启用 Invert Oversized Images。
- 弹性布局
web前端早有的布局方法
开发工具的提升
- Android Studio/IntelliJ 扩展
- Visual Studio Code 扩展
Flutter Community Plus Plugins
DartPad 升级到支持 Flutter 2
flutter 的优势
- 大公司支持 (背靠谷歌,还有像 canonical 支持)
- 快速增长的 flutter 应用
- 多平台支持
- 设备优化的好
- 丰富的组件库
- IDE 环境成熟 Visual Studio Code, Android Studio, and IntelliJ
- 简易安装
$ snap install --classic flutter
$ snap install --classic code
$ code --install-extension dart-code.flutter
- 快速模板
$ flutter channel dev
$ flutter upgrade
$ flutter config --enable-linux-desktop
$ flutter create counter
$ cd counter
$ flutter run -d linux
- 现有项目升级
$ cd my_flutter_app
$ flutter create .