1
头图

by Tim Sneath, Flutter & Dart Product Manager

Flutter has been updated to the official version 2.8, released a number of new features and improvements to continuously improve the mobile and web development experience, and is also pushing desktop support to the stable version.

Flutter has brought innovation to application development: as long as a set of code bases, you can build, test, and publish exquisite applications for mobile, web, desktop, and embedded platforms-developers only need to focus on the products and products they want to build. Services, without first considering which platforms to publish to; as a high-performance, high-productivity development framework, Flutter can also help developers shorten the product development cycle; a set of code bases for multiple platforms.

New features and improvements: faster and more efficient

The main focus of this official version is the mobile platform . Ideally, excellent performance should be "standard", but in practice, all large-scale or complex business applications need to be optimized for hardware and system API libraries. This includes, but is not limited to, for example, application startup, which may be limited by the consumption of network bandwidth and other code initialization, memory consumption, may be restricted by some devices with limited memory, and graphics rendering performance. We have also been using internal large-scale applications such as Google Pay to use Flutter to improve Flutter's performance, and provide better tools to debug and analyze application performance. Upgrade your project to the official version of Flutter 2.8, your application should have less memory footprint and faster startup speed.

The latest update also includes a more convenient application access back-end service features, such as the use of Firebase and Google Cloud. We also provide a stable version of support for apps that can join Google Ads, and provide a large number of updates to the camera plug-in and web plug-in. At the same time, the official version of Dart 2.15 was released, which added major improvements to concurrency performance, and also added new language features, such as constructor splitting and enhancement of enumeration types, as well as performance optimizations to make runtime Memory has been reduced by 10%.

现在你的应用可以通过使用一个简单的 Flutter widget 来完成多平台用户登录功能了

Another important topic and resource investment is "improving developer efficiency". Thanks to Flutter's stateful hot reload (stateful hot reload) and other features, we have always focused on creating a compact internal loop iteration process for developers. We are Start exploring to encapsulate some more advanced features for developers to use more quickly and efficiently. You can also see our improvements to this goal in future versions. For example, in this official release, we have added a widget that uses Firebase to handle authentication. When using it, you don’t need to worry about any special use cases, such as two-step verification, password reset operations, and you don’t have to worry about using Google, Apple, The complications of Twitter and Facebook account login. Building these features and services directly on the core foundation of Flutter will likely bring innovation to application development, combining efficient development and low-code solutions, and applying them to the flexible and powerful UI framework of Flutter.

Use Flame, a game development framework based on Flutter

For most developers, Flutter is an application framework. However, the ecology of using Flutter for casual mini game development is also constantly evolving. These mini games rely on Flutter to achieve hardware graphics acceleration.

Today we also celebrate the official release of version 1.0 of the Flame framework (flame-engine.org), which is a modular 2D game engine based on Flutter. Flame provides all the content needed to build games quickly, except for the game loop (game loop). In addition to loop), it also provides core elements such as component system (called FCS in Flame), sprite animation and images, collision detection, world camera, effect system, and gesture and input support.

Flame is modular, it can also be extended with other libraries or packages, such as using River for animation effects processing, audioplayers package for music playback and sound effects, using Forge2D (a physics engine similar to Box2D), Tiled (watts) Film map editor), Fire Atlas (Spritesheet and sprite animation editor), etc. Flame and its extensive ecosystem together provide a powerful set of services for casual or 2D games.

三款使用 Flame 构建的游戏示例:Tomb Toad、Gravity Runner 和 Bonfire

Flame was created by the Blue Fire team , a team focused on building open source packages and plugins for Flutter and Dart. We are very happy to work with them. If you are interested in game development, we encourage you to try Flame.

Flutter's development momentum is booming

Flutter's continued growth, development momentum, and the prosperity of tools and ecology are amazing. At this year's I/O conference, we noticed that the Play Store and more than 200,000 apps used Flutter. Six months later, this number has almost doubled to 375,000+ models!

在所有屏幕上大放异彩,Flutter 支持 Android、iOS、iPadOS、Web、Windows、macOS 和 Linux

Not only in the Android platform, according to independent mobile analytics company AppAnnie information, iOS platform head brand and large-scale applications such as BMW , eBay , WeChat , Shein , Philips Hue , Norton , trip.com and Greggs also use Flutter. On the Web platform, we also use FlutterFlow and Rive to bring a better experience to the application. On the desktop, the Ubuntu engineering team is also continuing to use Flutter to build a variety of new experiences, including new installers and firmware updates. Even Jedi survive such a big game, also called Flutter can well adapt to various UI screens.

Not in a day to build things ecosystems, given by independent research institutions and communities: Statista , JetBrains , SlashData and Stack Overflow , Flutter has now become the most popular multi-platform toolkit At the same time, it is inseparable from the growing ecology of package and plug-in libraries and the support of various tool sets.

Looking back and looking forward

This year is equally difficult, and our engineering team has been busy. In addition to pushing 2.8 into the official version, we also rewrote the developer tools, introduced air security and web support, completed FFI support for native code, added support for Material You, and worked hard to improve performance and quality. We have nearly resolved and closed a total of 20,000 issues, and updated the new version of the Flutter website . In the past few months, we have spent a lot of energy to organize our engineering infrastructure to improve the productivity of engineers and expand the scope of testing.

Looking ahead to 2022, first of all, we hope to be able to truly go out and meet with you. We are also investing more in the core developer experience, such as enhancing the programming language, updating documentation, and abstracting more advanced features, making Flutter easier to build complex applications , We will also advance the desktop support to a stable version, and further increase the features of the web. In addition, we also plan to expand the interoperability of other platforms to adapt to the updated screens. We are always on the way!

Nostalgia and tribute

We want to dedicate the Flutter 2.8 version to Kevin Gray in the community. He is an engineer from the VGV team, but unfortunately passed away week ago. From the beginning, Kevin made a lot of important contributions to the success of Flutter. He was the developer behind many early Flutter demos, including Flutter’s first customer Hamilton application. He used Flutter to develop the first desktop demo slides application and developed The first Flutter application shown in the Google I/O keynote. Kevin is a talented, caring, funny and kind person. We are publicly commemorating him and let everyone know his influence. Without him, Flutter would not be what it is now. We miss you and thank you for everything you have done for Flutter.

Kevin has been supporting a charity cause "Plan International". The CFUG community donated $280 to this project in the name of Kevin to thank him for his support and contribution to Flutter.


Flutter
350 声望2.5k 粉丝

Flutter 为应用开发带来了革新: 只要一套代码库,即可构建、测试和发布适用于移动、Web、桌面和嵌入式平台的精美应用。Flutter 中文开发者网站 flutter.cn