Flutter (or the other similar Framework “React-Native” ) is only doing its best at UI for single-code development in multi-platform (iOS, Android).
When you need to add on some non-UI features in your apps (eg. customized QR-code, customized foreign language keyboard, etc), you need to develop in native codes (C/C++… ) then called by Flutter / React-Native (Which Choice ? )
Native vs Cross-Playform Framework Approaches:
- Naive : Java / Kotlin (Android) or Objective-C / Swift (iOS)
- Cross-platform Framework: Flutter / Dart (Google), React Native
Mobile Apps developed for cross-platform : iOS, Android, Web… (Huawei HongMengOS ? )
- Flutter (Google) — Dart
- Xamarin (Microsoft) — C#
The above analysis for the 3 tools is neutral – beauty is in the eye of the beholder – they are more or less the same family based on current Object-Oriented paradigm.
However, I would recommend a 4th option with additional future-promising Functional Pragramming (FP) paradigm for multi-platform mobile apps:
4. Native Codes in C++ (Version 17) with Standard Template Library.
- C++ can be developed in Android Studio, called by Java / Kotlin / Flutter via JNI interface.
- Or in React Native IDE.
- IEEE 2019 Ranking : C++ / C is ranked 3rd popular language behind Python (1st) & Java (2nd), but it is unique in multi-paradigm & multi-platform, an advantage compared to the others.
[Source: please read the below link:]
“The dawn of a new era in app development” by gk_ https://link.medium.com/fDulXo3zWZ
The dilemma of maintaining 4 code bases for multi-platfofms:
- Cross-platform tools for Web / Native codes.
- Google’s future Android-replacement Fuchsia OS (OO&FP Logic : C++/C, Phone UI: Dart, Web: Rust, Server: Go) Flutter framework for iOS / Android / Windows / Web [Notice: the conspicuous absense of Java]
华为 鸿蒙 Huawei HongMeng‘s answer : “1+8+N” iOT multi-platforms (which will soon obsolete Apple iOS & Google Android)
- Smart HD TV (out in August 2019)
- Mobile Phones / Notepads (April 2020 Huawei P40)
- Driverless Car
- PC Desktop
- AI Sound boxes
- Virtual Reality (VR)
- (+ N) All iOT devices
C++ version 17 (Standard Template Library ‘STL‘ for Functional Programming) is multi-paradigm : Imperative, OO & FP. It curently supports Android as Native codes (ie bypass JVM).
Google: Flutter framework in Dart (a Java cousin)
1. Best Introduction : Start From the Basics
Useful tips (Android Studio)
“Comd S” : Hot Reload
“Comd – >” : rotate iPhone simulator 90 degree
2. Coding Tutorials
2.2 More (… eg. Regex Validation Input)
View at Medium.com
Today 4 Dec 2018 is a “Big Day” with Flutter 1.0 finally out from Beta. Just like Kotlin was announced by Google in 2017 to substitute the painful old Java.
Flutter is the UI design tool for next Google secretive OS “Fuchsia” to replace Android.