更新时间:2024-08-10 18:30
Flutter是Google开源的应用开发框架,只要一套代码兼顾Android、iOS、Web、Windows、macOS和Linux六个平台。Flutter编译为原生机器代码,助力提升应用的流畅度并实现优美的动画效果。Flutter由Dart语言强力驱动,助力高效构建全平台应用。
Flutter可以方便地加入现有的工程中。在全世界,Flutter 正在被越来越多的开发者和组织使用,并且 Flutter是完全免费、开源的。它也是构建未来的 Google Fuchsia 应用的主要方式。
Flutter组件采用现代响应式框架构建,这是从React中获得的灵感,中心思想是用组件(widget)构建你的UI。 组件描述了在给定其当前配置和状态时他们显示的样子。当组件状态改变,组件会重构它的描述(description),Flutter 会对比之前的描述, 以确定底层渲染树从当前状态转换到下一个状态所需要的最小更改。
Flutter的第一个版本被称为“Sky”,运行在Android操作系统上。它是在2015年Dart开发者峰会上亮相的,其目的是能够以每秒120帧的速度持续渲染。
Beta1版本于2018年2月27日在2018 世界移动大会公布。
Beta2版本2018年3月6日发布。
1.0版本于2018年12月5日(北京时间)发布。
2.0版本于2021年3月4日(北京时间)发布。
3.0版本于2022年5月12日(北京时间)发布。
Hello World!
在Dart2.0版本之后,可以省略new。
runApp函数接收给定的组件(Widget)并使其成为组件树的根。 在此例中,组件树由两个组件构成,Center组件和它的子组件-Text组件。框架强制根组件覆盖整个屏幕,这意味着“Hello, world”文本在屏幕上居中显示。需要注意的是,上面的例子中,文字的样式是缺省的。不必担心,当使用MaterialApp时,它会使用 Material Design 样式。
在编写app时,通常会创建独立组件,是继承无状态的StatelessWidget还是有状态的StatefulWidget, 取决于您的组件是否需要管理状态。组件的主要工作是实现一个build函数,它使用其他低级别的组件来构建自己。Flutter框架将依次构建这些组件,最终会到达代表底层渲染对象的组件-RenderObject,它会计算并描述组件的几何形状。
Flutter的热重载帮助你快捷方便的试验、重构UI、添加特性和修复bug。在仿真器、模拟器和ios、android硬件上体验亚秒级的重载,而不会丢失状态。
通过Flutter内建的漂亮的质感设计和Cupertino(ios-flavor)小工具、丰富的动画API,平滑的自然滚动和平台感知,让用户感到满意。
通过Flutter的现代响应式(Reactive)框架和丰富的平台布局和基础组件轻松构建您的用户界面。用强大而灵活的API解决2D、动画、手势、效果等难题。
访问原生功能
通过平台api、第三方sdk和原生代码使您的应用变得生动起来。Flutter让您可以重用您现有的java、swift和Objc代码,并在iOS和Android上访问原生特性和SDK。
访问平台功能非常简单。这是互操作示例的片段:
Flutter的主要结构包括:
2022年2 月 ,据谷歌官方消息,谷歌为开发者带来了 Windows 平台支持的首个正式版本,Flutter 稳定版本全面支持 Windows 应用。谷歌表示,Flutter 的 Windows 实现结合了 Dart 框架和 C++ 引擎,与对 Android 和 iOS 提供的支持一致。