On August 5, 2020, Google has launched the latest version of Flutter 1.20 Stable, its cross-platform UI toolkit. In its former version, Google has released several enhancements like new material widgets, in performance, and enhanced support for metal on iOS.
Now Flutter has come up with its new version of 1.20 that includes all the latest improvements and updates, UI improvements, visual studio code extension, autofill for mobile text fields, and so forth.
The latest version of Flutter 1.20 incorporates almost 5485 closed problems and 3029 combined PRs from 359 contributors from all over the world and this is the topmost number of contributors for every flutter version till now launched.
What’s New in Flutter 1.20?
Let’s have a look at the new features and developer tools that the new version of flutter 1.20 has released for the Flutter app developers!
Autofill for Mobile Text Fields
In every flutter app, the most requested and preferred feature is the support for the text autofill. Developers prefer it a lot.
With flutter 1.20, Google has met all requirements of the developers and added key functionality; however, some platform-specific configurations like PasswordRules on iOS are not enabled. The support for mobile text autofill will also come for web apps.
In the latest version of flutter, Google made these performance enhancements:
- Google has incorporated a performance solution for tree-shake icons when developers create non-web applications. This feature cuts off the app size by removing the icon that is not highly utilized by users. This icon-free tree shaking feature is presently restricted to the TrueType fonts but according to Google, this prohibition will be removed in the future.
- An app with poor animation can impact it negatively in the first run because of a shady compilation jank. However, using Skia Shading Language Shader Warm-up, the shader compilation jank can be lowered by almost 2 times.
- Google has boosted the mouse hit testing’s performance in the web-based micro-benchmarks by 15 times. In turn, Google has become capable of incorporating the assistance of the mouse cursors that will also be introduced in forthcoming widgets.
- The decoding time and speed of Dart’s UTF-8 Decoder have also been enhanced by Google in Dart 2.9. The organization has established measurable enhancements of nearly 400% for the Chinese text and 200% for English on the low-end ARM gadgets in the UTF-8 decoding benchmarks.
Bringing Dart DevTools in Visual Studio Code
Google has included the new Visual Studio Code extension and directly brings Dart DevTools into the visual studio code extension in flutter 1.20. Developers can enable this using the dart.previewEmbeddedDevTools setting.
The all-new interactive widget is created to help developers to design, build, and apply interactive elements on your app like Drag n Drop, Pan, Zoom, and so forth. For this widget, the API documentation is accessible only when the developers upload and delve into the widget building process.
Updated DatePicker, TimePicker, RangeSlider, and Material Slider
Along with the new widgets, the flutter 1.20 version incorporates many updated widgets to meet the most recent Material instructions. These incorporate RangeSlider and Slider.
DatePicker has received an update and incorporates the all-new compact design and assistance for date ranges. And ultimately, TimePicker has received a new style.
Updating Import Statements on File Rename
For the Visual Studio Code, another new feature is updating imports on rename. This updates the import statements automatically when files are renamed or removed.
Presently, this feature just works for single files, and support for multiple files or folders will come soon.
Updated Version of the Network Page
The most recent version of Dart DevTools has come with an upgraded version of the Network page that allows web socket profiling.
Presently, the Network page includes timing data to the network calls from your application, alongside other data like content type and status.
More enhancements have been made to the details UI to offer a data analysis in anHTTP request or web socket.
New pubspec.yaml Format Needed to Publish Plugins
The flutter 1.20 version has come with several updates:
- A public service declaration: in case you are a flutter plugin author, the legacy pubspec.yaml format is no more supported to publish plugins.
- The earlier format didn’t support particularizing which platforms get the plugins’ support and has been condemned since flutter 1.12. The latest pubspec.yamlformat is presently needed to publish updated or new plugins.
Responsive Licenses Page
Another update of this release is the all-new responsive licenses page accessible from the AboutDialog.
Tooling Metadata for all Tool Builders
This is another update for people developing flutter tooling. This tooling metadata for the flutter framework provides:
- A mapping of flutter framework color names to color values, for both Cupertino and Material color sets
- A catalog of all recent flutter widgets
- Icon metadata for Cupertino and Material icons, incorporating preview icons and icon names
Typesafe Platform Channels for Platform Interop
Due to excessive demand from plugin authors, Google is experimenting on the ways of making communication between flutter and the host platform simpler and more secure for Add-to-App and plugins.
For addressing this requirement, Google has made Pigeon, a command-line tool that utilizes Dart Syntax for creating type-safe messaging code on top of the platform channels without including extra runtime dependencies.
Rather than matching method strings manually on platform channels and serializing arguments, you can use Pigeon to pass non-primitive data objects and implore Swift/Kotlin/Objective-C/Java class methods by calling Dart methods directly.
According to Google, Flutter 1.20 is one of the biggest launches to date and there are more to come in the future. The organization is still working on executing other features like the new version of Maps, ads, new WebView plugins, sound null safety support, more tooling assistance, and so forth.
Google is also working on building better desktop and web support on the Linux where they declared an association with the Canonical.