Flutter是Google移动UI框架,用以创建高质量的native接口,真正跨平台,同时在iOS和Android上运行。Flutter是免费开源的,全球开发者及组织均可以使用。
Flutter有又几个特点:
-
快速开发
-
极具表现力,灵活的UI
-
native性能
- Flutter组件包含了所有平台的关键差异,例如滚动,导航,图标和字体。使得Flutter在iOS和Android上使用可以获得完全的native性能体验。
快速开发
Flutter热加载技术有助于你快速且简单地进行试验,构建UI,增加特性,并且快速修复bug。体验不到一秒的重新加载体验。
漂亮的UI
Flutter内置MD设计风格及iOS组件,更有丰富的手势API,流畅的滚动体验和平台认同感会让用户感到愉悦。
查看组件
现代的响应式框架(Modern,reactive framework)
利用Flutter响应式框架和丰富的平台,布局和功能组件是的UI构建非常简单。使用灵活并且强大的API(2D,动画,手势,性能等)可以解决在UI上各种问题。
class CounterState extends State<Counter> { int counter = 0; void increment() { // Tells the Flutter framework that state has changed,// so the framework can run build() and update the display. setState(() { counter++; }); } Widget build(BuildContext context) { // This method is rerun every time setState is called. // The Flutter framework has been optimized to make rerunning // build methods fast,so that you can just rebuild anything that // needs updating rather than having to individually change // instances of widgets. return new Row( children: <Widget>[ new RaisedButton( onPressed: increment,child: new Text('Increment'),),new Text('Count: $counter'),],); } }
查看组件及学习更多有关reactive framework
使用native特性和SDKs
我们使用平台APIs,第三方SDKs和native代码开发APP。Flutter可以让你在iOS和Android继续使用Java,Swift,Objective-C代码并且使用native特性。
访问平台特性很简单。下边的代码片段开始:
Future<Null> getBatteryLevel() async { var batteryLevel = 'unknown'; try { int result = await methodChannel.invokeMethod('getBatteryLevel'); batteryLevel = 'Battery level: $result%'; } on PlatformException { batteryLevel = 'Failed to get battery level.'; } setState(() { _batteryLevel = batteryLevel; }); }
学习如何使用包(packages),或者写platform channels,使用native代码,APIs和SDKs。
统一的开发标准
Flutter拥有工具及库帮助你简单快速地在iOS和Android上实现你的想法。若你还没有任何移动开发经验,那么Flutter将会是你构建漂亮的移动APP的一种简单快速的额方式。若你是有经验的iOS或者Android开发人员,那么你可以使用Flutter组件,并且继续使用已有的Java/Objective-C/Swift程序。
- 构建
- 优化
- 部署
- 编译
- Native ARM程序
- 消除无效代码
- 发布
- App市场
- Play Store
- 编译
可以在技术概览了解更多Flutter的特殊性。