I recently found out about the new cross-platform framework for mobile development that Google backs up: Flutter. Although it’s only in alpha stage (i.e. early development) at this time, I wonder, could it eventually reach more adopters than Xamarin or Cordova-based frameworks, or – more importantly – more than native mobile development?
Here is the table I came up with to compare:
|Android + iOS
|Backed up by||Google + Apple||Apache||Microsoft|
|How does it work?||Natively||WebView: interpreted code, rendered as in device browser||AOT-compiled, uses OEM widgets, native rendering||AOT-compiled, uses custom widgets, custom rendering|
|Stock-like UI?||Yes||Yes||Yes||Requires custom widget selection|
|Difficult corner cases?||No||Yes||Yes||Yes|
|Easily access new OS features?||Immediately||Later||Later||Later|
|Non-mobile platform support||None||Web||Windows||None|
While I still don’t know the answer, I tend to say it’s a no.
Unless Flutter would prove to have support for many use case scenarios and very few bugs when it would go beta, which I assume will be very difficult given the fact that they do custom rendering and that developers can only use widgets from a custom catalog.
Or unless Google pushes it hard into Android Studio and “forces” everyone (or at least most Android developers) to use it, like Microsoft did with Visual Studio .NET when they wanted less Win32 development long time ago. But this time it’s different, as we have a mobile OS duopoly and Apple iOS developers could simply stick with Xcode anyway!