Flutter is Google’s cross-platform development tool for mobile apps, enabling developers to develop high-quality native application interfaces on both iOS and Android platforms. The two-day Google China 2018 Developer Conference kicked off today in Shanghai. During the conference keynote, we launched Flutter “Release Preview 2”. This is our last major release before Flutter 1.0.

beta
First preview

Flutter “release preview 2” new features

The theme of the new release is “Making iOS Apps Perfect.” Although Flutter is designed to help developers achieve a customised, brand-driven mobile experience, some developers have reported that they need to follow the Official Apple Interface Development Guidelines strictly when developing their apps. To that end, we’ve specifically expanded support for Cupertino style controls in our new release. Preview 2 comes with a library full of widgets and classes that make it easy for developers to create ios-style interfaces.

△ iOS Settings page developed with Flutter

  • CupertinoApp: A top-level component for creating ios-style applications
  • CupertinoTimerPicker: Used to create countdown timers
  • CupertinoSegmentedControl: used to create the horizontal section controls
  • CupertinoActionSheet: create iOS style bottom pop-up sheets

Improvements include:

  • CupertinoNavigationBar 和 CupertinoSliverNavigationBar
    • Parallax scrolling effect is realized when switching pages
    • Automatically populate the page title and return button label based on Cupertinopageroute. title
  • CupertinoPageScaffold
    • Rearrange the content to prevent the keyboard from obscuring the content in the interface
  • CupertinoScrollbar
    • Enhanced visual fidelity for out-of-bounds scrolling
  • CupertinoPicker
    • Added support for infinite scrolling and cyclic scrolling
    • Added multi-column support for off-axis cylindrical projections

You can consult the Flutter documentation for full details about the Cupertino* class.

(Please note that at the time of this writing, some of the Cupertino widgets above were not added to the visual Components directory.)

Other scenarios have also been improved. Preview 2, for example, adds support for executing Dart code in the background. Even if the application is suspended, code execution will not be affected. Plug-in developers can take advantage of this new feature to enable newly developed plug-ins to execute code when an event is triggered, such as a timer being triggered or a geolocation update being received. For more technical details on how to take advantage of background limitations on the Geofencing plug-in, check out this Medium blog post.

Flutter has also been optimized to slim down apps: it can reduce the size of Android and iOS apps by up to 30%. The smallest Flutter application we built for Android in release mode was only 4.7MB, 2 MB less than before optimization — and we continue to look for other potential optimizations. (Please note: Although the improvements above apply to both iOS and Android, you may see different results on iOS due to the way the iOS installation package is built differently from Android.)

Check out this video for more details: www.youtube.com/watch?v=_Lf…

The steady development of

As new developers continue to explore Flutter, we would like to share some good news: Thanks to your support and love, Flutte has been included in GitHub’s Top 50 most active app Libraries.

△ Graph TOP form

Check out Google Developer Story on Tencent Video

Bilibili: Google developer story video link

We take customer satisfaction very seriously and conduct regular user surveys to help us get feedback in a timely manner. According to a recent survey, 92% of developers were very satisfied or satisfied with Flutter and would recommend Flutter to others. When asked about development efficiency and UI design, 79% of developers felt that Flutter was very helpful to speed up development and deploy the desired UI. In addition, the Dart language, which has just been released in its second stable release, also has good results: 82% of Flutter developers are very satisfied or satisfied with the Dart language.

In addition to the above survey data, we can also feel the vigorous development of Flutter community in many other ways. For example, Flutter has been gaining traction on the developer q&A site StackOverflow: more and more people are Posting, answering, or visiting new questions about Flutter on the StackOverflow site.

— StackOverflow question traffic statistics for the top four UI frameworks

From day one, Flutter has always been open source because it is our choice. We want to make public the progress of Flutter development and encourage more people and organizations to get involved and contribute to creating a great user experience across all platforms.

Upgrade guide

How to upgrade to Flutter Release Preview 2? If you are already using Flutter, you can easily upgrade Flutter by running the upgrade version command below:

$ flutter upgrade

If you haven’t tried Flutter yet, why not give it a try? Visit flutter. IO to download this tutorial and begin your flutter exploration right now.

When you are ready, explore the rich sample applications and code snippets of the Flutter ecosystem to find out. If you would like sample code provided by the Flutter team, please go to the Flutter /samples repository on GitHub to learn more about how Material and Cupertino are used, Learn how to deserialize JSON data and more practical tips. In addition, you can visit the Flutter Featured Examples page to see some of the best Flutter development examples from the Flutter community.

In addition, we have prepared a series of Flutter teaching videos, a Flutter weekly, a Flutter community column, and a Flutter application tutorial to help you keep up with the latest information about Flutter. Also, if you’re having problems with your development, try reaching out to other developers on discussion groups, chat rooms, community support, and weekly online chats. “Preview 2” is the last preview before the stable release. Next stop: See you at 1.0!