Google announced Flutter 2.2 (which is the latest version of their toolkit for building apps for any device from a single codebase, and works with existing code) at the Google I/O event. It has exciting improvements focused on polish and optimization, including Android deferred components, iOS performance improvements, and improvements for desktop and DevTools. Also, sound null safety is the default for new projects now.
Customers around the world are using Flutter to create beautiful apps of all sizes in record time, to meet users by eliminating traditional impediments.
Flutter 2.2- The best version of Flutter so far
Flutter 2.2 makes it easier for developers to monetize their apps through in-app purchases, ads and payments, to connect to cloud services and APIs that extend apps to support new capabilities, and has tools and language features that allow the removal of a lot of errors, and result in an enhanced app performance and reduced package size.
While Flutter 2 was released around 2 months before Flutter 2.2, Flutter 2.2 merges 2456 PRs and closes 3105 issues across the framework, engine, and plugins repositories.
Flutter is now the most popular framework for cross-platform app development.
According to SlashData, 45% of the developers chose Flutter, which represented a 47% growth from Q1 2020 to Q1 2021.
“There are now over 200,000 apps in the Play Store alone built using Flutter.”
Hire Flutter developers from i-Verve Inc. to build powerful, future-ready and cost-effective apps using a single codebase, that run smoothly on iOS, Android and other platforms.
Following are the key updates in this release:
1). Improvements in Flutter 2.2 over Flutter 2
The major improvements include updates for web, iOS and Android, new Material icons, updates to text handling, scrollbar behavior, and mouse cursor support for the TextSpan widget and guidance regarding supporting different types of platforms from a single source code base in the best way. Flutter continues its work on important areas of polish such as better accessibility for web targets.
The Release of Dart 2.13:
The improvements are made through a new release of Dart language- Dart 2.13. Dart is the “secret sauce” that runs Flutter.
Dart 2.13 expands support for native interoperability, with support for arrays and packed structs in FFI, and better performance. Packed structs result in lesser overall memory consumption.
Dart 2.13 also includes support for type aliases, which increase readability and offer a gentle pathway for some refactoring scenarios. One common use of type aliases is to give a shorter or more descriptive name to a type, making the code more readable and maintainable.
Dart 2.13 includes many changes that considerably reduce the space occupied by program metadata when “–split-debug-info” is used.
Flutter continues to add integrations for the ecosystem, with a Dart GitHub Action and a curated Docker Official Image that is optimized for cloud-based deployment of business logic.
Null safety is Dart’s latest major productivity feature, aimed at helping you avoid null errors- a class of bugs often difficult to spot. Sound null safety provides enhanced performance for apps.
Payments and monetization:
Flutter continues to build trusted services that help developers monetize their apps. The new ads SDK has been updated with null safety and support for adaptive banner formats. A new plugin is being introduced that lets you accept payment for physical goods on Android and iOS. The in-app purchases plugin has been updated, along with a matching codelab.
Improvements have been made to HTML and CanvasKit web renderers. The gap between mobile and desktop web apps has been closed, when using transforms.
The latest version of Flutter DevTools supports the layout explorer for Flutter web apps.
iOS page transitions and incremental installs:
There is a 40% reduction in the time taken to install an updated version of your iOS app, which reduces your turn-around time when testing app changes.
Hire iOS App Developers who can help accelerate your business growth with custom app development services.
Enhanced text handling:
In this release, Flutter has started refactoring how text input is handled that enables features such as canceling a keystroke as it bubbles through the widget hierarchy, and by introducing the ability to fully customize the keystrokes associated with text actions. This gives your end users a more intuitive experience. Custom text actions let you do things such as special handling of the Enter key in a TextField, and allow Flutter to provide different keystrokes to match the behavior of text editing to the host OS itself.
Mouse cursors over text spans:
You can have all the wrapping text spans you want, and those with recognizers will get the appropriate mouse cursors. Things like these make a Flutter app feel just like a user expects it to feel.
Platform adaptive apps:
Flutter has the support that you require to target your app at various platforms, and intends to customize your apps for input modes, screen size, and idioms of these platforms.
2). Updates in Flutter 2.2 in preview
In addition to the above new features, the Flutter 2.2 version comes with a number of features in preview. Users can give these features a try, and give feedback if they have any issues.
iOS shader compilation improvements:
So far, the only way to avoid jank on iOS was to simplify scenes and animations, which was not ideal. Now, there is a preview of the new support in Skia for shader warm-up for Metal. Through Skia, Flutter now compiles the bundled shaders before the first frame workload begins. This implementation has few drawbacks on Android and iOS. Flutter continues to work to remove shader compilation jank, and all jank, that do not depend on this implementation.
Flutter Windows UWP alpha for desktop lovers:
UWP lets you take Flutter apps to devices where standard Windows apps do not run, including Xbox.
Android deferred components:
Flutter 2.2 uses Dart’s split AOT compilation feature to let Flutter apps download modules containing ahead-of-time compiled code and assets at runtime, for Android. By deferring the download of code and assets to only when required, initial install size can be reduced considerably.
Hire Android App developers to build secure, feature-rich, high-performance and robust Android apps.
ARM64 Linux host support from Sony:
You can create and run Flutter apps on ARM64 Linux machines.
3). Flutter ecosystem and tooling updates
The Flutter engine and framework are just a part of the overall experience. Updates to the packages ecosystem and tooling are equally important, which include updates from the larger Flutter community.
FlutterFlow is a “low code” tool for creating apps within your browser. It offers a WYSIWYG (What You See Is What You Get) environment for laying out your app across multiple pages using real data from Firebase. A low code tool enables you to do most of the common things with ease, letting you write the fewest possible lines of customized code.
Flutter Favorite updates:
The Flutter Ecosystem Committee is certifying 24 new Flutter Favorite packages, which is Flutter’s largest expansion.
The Flutter Favorites tagged newly include:
- Flutter Community “plus” packages: android_intent_plus, android_alarm_manager_plus, connectivity_plus, battery_plus, device_info_plus, package_info_plus, network_info_plus, share_plus, sensors_plus
- FlutterFire packages: cloud_functions, cloud_firestore, firebase_core, firebase_auth, firebase_storage, firebase_crashlytics, firebase_messaging
- googleapis package
- intl and characters packages
- win32 package
- infinite_scroll_pagination and flutter_native_splash packages
- Sentry packages: sentry_flutter and sentry
Firebase App Check and updates in FlutterFire:
FlutterFire, Flutter’s support for Firebase, is one of the most popular collections of plugins. New features continue to be added to the FlutterFire plugins, including many updates to Flutter’s integration with Cloud Firebase:
- Typesafe API for reading and writing data
- Optimizing the data queries with data bundles
- Support for the Firebase Local Emulator Suite
FlutterFire provides support for the beta release of a new Firebase product: Firebase App Check. Firebase App Check protects your backend resources like Cloud Storage from abuse.
Updates in Flutter DevTools:
Flutter DevTools has various cool updates, including 2 memory tracking improvements and a new tab for the provider plugin.
The memory tracking improvements are useful to find the location in your code of a memory leak and to check that you are cleaning things up well.
Sometimes you need to find issues related to packages. So Flutter has been experimenting with adding a new Provider tab to Flutter DevTools.
Updates in IDE plugins:
The Visual Studio Code and the IntelliJ/Android Studio IDE extensions have been updated. This is beneficial when the root cause might be in a different package, which previously was not being printed. Flutter is making more changes regarding this, for the future.
Expansion of Flutter to an ever increasing number of operating systems and platforms
Flutter is here to stay for long for sure.
Toyota, the world’s top-selling automaker, is bringing a best-in-market digital experience to vehicles, by building Flutter-powered infotainment systems. Samsung is porting Flutter to Tizen. Sony is working on introducing a solution for embedded Linux. Canonical introduced Ubuntu with integrated support for Flutter, with Snap integration and support for Wayland.
Microsoft Surface has been working with Flutter to create foldable experiences, and work is being done on Flutter support for UWP apps built for Windows 10.
More than 1 in 8 new apps in the Play Store are Flutter apps.
So if you are planning to build or migrate to a Flutter app or a cross-platform app, and want to make the most of the new features of Flutter 2.2, i-Verve is a well-known Flutter app development company that can help you with its unique blend of experience and expertise.
We have the right experience in developing forward-thinking, robust and cost-effective Flutter web and mobile apps. With a proven track record of best practices in Flutter for cross-platform app development, we help businesses take advantage of all possibilities, and our team of developers will always be there for assistance.
If you would like to know more about the new Flutter 2.2 release or how our Flutter app development services can help you achieve your digital goals, Reach out to us today.