Flutter 1.9 integrates web repo, brings iOS 13 and MacOS Catalina support, and ML-powered code completion with Dart 2.5
Developing cross-platform apps can be a mess of non-native code, so Google set out to attempt to solve this issue with a unified toolkit that integrates directly with your editor of choice. By integrating directly with Android Studio, or other development environments of your choice, Flutter creates a faster development experience that allows you to unify your UI design across platforms. Now, Google has announced a new stable release of Flutter v1.9 alongside Dart 2.5.
The highlight of this Flutter release is the integration of web support into the main Flutter repository, which is a major change as it allows developers to write for mobile, desktop and web with the same codebase. Further, Flutter has received updates to its end-to-end tooling experience, like support for the new Xcode build system, enabling 64-bit support throughout the toolchain, and simplifying platform dependencies, to ensure that it works well on macOS Catalina. Flutter 1.9 also includes an implementation of the iOS 13 draggable toolbar with support for long-press and drag-from-right actions and vibration feedback. Work is also underway to support iOS dark mode. There is also experimental support available for Bitcode in the development builds. New Flutter projects now default to Swift instead of Objective-C for iOS, and to Kotlin instead of Java for Android; but you can always switch back to them if you need them. Error messages on Flutter are also getting an update to make them more readable, more concise and more actionable.
Alongside Flutter 1.9, Google is also releasing Dart 2.5 SDK, which then includes technical previews of two major new developer-oriented features: code completion powered by machine learning (ML), and the
dart:ffi foreign function interface for calling C code directly from Dart. Machine Learning-based code completion comes in handy when the API list grows too large and too long to explore through alphabetically. With the ML Complete, Dart’s TensorFlow Lite-powered model can be used to predict the likely next symbol as the developer is editing. And with
dart:ffi, developers can leverage not only existing native APIs on the operating systems where Dart code runs, but also existing cross-platform native libraries written in C.