Flutter is one of the fastest-growing mobile app development frameworks. It has almost 70,000 stars on its GitHub repository and is widely adopted by software engineers in the field. The development team is working hard to address any issues, as evidenced by the fact they closed over 1,250 reports in the past two months since the release of Flutter 1.5. Now, version number 1.7, dubbed by Flutter's Product Manager Tim Sneath as an optimizing update, is generally available.

AndroidX support for new apps

Starting with 1.7, Flutter now supports the AndroidX support library, which was introduced to the Android development platform last year. AndroidX is designed to allow developers to use the latest components while maintaining backward compatibility. Google also open-sourced it so developers can keep up-to-date on the latest versions. Since a lot of Flutter's packages have now been updated to support AndroidX, the development team decided to allow for creating new Flutter projects with AndroidX. All you have to do is add the --androidx flag to your project to target the support library. Documentation on migrating existing projects can be found here.

Android App Bundle (AAB) support

There's still a little over two years until Google completely stops serving 32-bit native applications on the Play Store, but some other restrictions will soon take place. Starting August 1st of this year, all applications that use native libraries and that target Android 9 Pie or later will be required to provide 64-bit support. Flutter already supports generating 64-bit Android apps, but version 1.7 of the framework now lets developers create Android App Bundles with both 32-bit and 64-bit versions of their apps. This will make it easier for native app developers using Flutter to support both 32-bit and 64-bit to meet the August 1st deadline, and then eventually drop 32-bit support in 2021. Here you can find instructions for publishing an Android App Bundle as well as instructions for generating different APK files for 32-bit and 64-bit devices.

New widgets and APIs

Although Flutter aims to be an all-in-one cross-platform development framework, it is mostly focused on supporting mobile operating systems. That's why the team is constantly adding new widgets and components to fulfill the fantasies of mobile app developers and UI designers. Flutter 1.7 is no different in that regard. There's a new RangeSlider material value component, which is useful for setting a range between minimum and maximum values. Android users will also get updated an SnackBar widget in Flutter applications. Widget for iOS, Cupertino, also gets updated with improved CupertinoPicker and CupertinoDateTimePicker widgets.

For the first time, Flutter is gaining support for game controllers. Although it not very easy to write a full-fledged game on Flutter currently, this still has potential. This platform design sample informs developers on how to write code for components that adapt to both iOS and Android design languages. There is also a new fontFeatures property which lets developers define certain styles for specific fonts. You can see all the use cases of the property in the Flutter API directory.

That's basically it for this release. As you can see, the team hasn't adding that many new features to Flutter since Google I/O. They mostly focused on polishing and adding support for crucial APIs and libraries for basic applications.

To update to version 1.7, cd into the root of your Flutter directory and execute the flutter upgrade command. If you want to upgrade manually or reinstall the framework, Flutter 1.7 is also available for new installations.


Source: Tim Sneath/Medium