Google has released version 1.20 of its Flutter cross-platform framework for mobile, web and desktop, and reports that the number of Flutter-built apps in the Play store has increased from 50,000 to 90,000 since April.
With the desktop environments in mind, this version of Flutter has improved mouse support. Sells said the mouse testing support has been refactored, improving performance by up to 15 times. There is also now support for different mouse cursors, which Sells said was “one of the most upvoted features for desktop.” Drag and drop support has been improved, so you can now get the exact coordinates of a drop location.
Another key feature is autofill support in mobile applications. This means that Flutter apps now hook into the iOS and Android support for text autofill, so that users can quickly add common form fields like name and email address.
There is a new widget called InteractiveViewer, created by software engineer Justin McCandless, which enables panning and zooming of its child widgets. Rotation is planned but not yet working. There is also a new TimePicker widget and updated sliders and DatePicker. In general the design style follows Google’s Material Design guidelines, making it particularly at home on Android (as you would expect from Google), but there is also support for Cupertino widgets for a native iOS look and feel.
Go on, devs, have a Flutter on Linux desktop apps: Google and Canonical launch alpha SDKREAD MORE
The most commonly used editors for Flutter are Android Studio/IntelliJ or Visual Studio Code (VS Code). A new experimental feature in the VS Code is the ability to embed Dart DevTools such as the Flutter Widget Inspector within the VS Code window, whereas normally it appears in a separate Google Chrome window.
The Widget Inspector is handy for designing and troubleshooting Flutter layouts. Other embeddable tool pages cover Timeline, Memory, Performance, Network and Logging. The Network page now shows the timestamp and duration of network calls, which is useful for troubleshooting things like websocket data or web service requests.
Developers Łukasz Kosman and Jakub Wojtczak, who work for the application and web design company LeanCode, recently posted about their experience with React Native, Xamarin and Flutter. Flutter enables faster development, they claimed. “It took us 67% of the time in comparison to Xamarin (667h vs 987h) and 69% of the time needed to create the app with ReactJS (486h vs 704h) for the very same scope using the same API on a backend side.”
They achieve 90 per cent shared code, on average, between iOS and Android. They also claimed that Flutter made it easier for developers and designers to cooperate than React Native. Another Flutter advantage is size. The average size of a Xamarin app is 25MB, they said, and 32MB for React Native, whereas a Flutter app is 11MB - they acknowledged that the figures are not directly comparable, but feel that it accurately showed a pattern. LeanCode has decided to use Flutter for its mobile technology and to cease involvement in developing apps on different frameworks.
Others will have different priorities, different skills, and reach different conclusions, but Flutter does have momentum and is worth a look for those looking for a cross-platform framework.®