Flutter by, Raspberry Pi
On Tuesday,Google officially launched version 1.0 of Flutter, a toolkit for creating embedded graphic components that works with both iOS and Android from a single codebase.
By creating native ARM code, Google is claiming that Flutter (see below, using a Maps widget) enables the flexibility of cross-platform developing without compromising on performance.
Read more about the new Google toolkit here – Google’s mobile toolkit targets both iOS and Android
Well, the system is intended to run on a wide variety of platforms – including the desktop eventually – but one of the early ones tried was the Raspberry Pi.
Using the Flutter engine built for ARMv7, Google’s Chinmay Garde, describes his porting experiment.
There are few constraints covered:
“The Raspberry Pi is capable of running a full desktop environment with fairly heavyweight dependencies like X11. But, instead of depending on a heavyweight desktop environment (where Flutter Desktop Embedding’s embedder can be used), you will use Broadcom APIs directly. This allows booting directly to Flutter in a lightweight environment with no dependencies you don’t need.”
“You won’t use existing toolchains for building any artifacts. The Raspberry Pi is a fairly popular platform with well supported toolchains, but this process follows the same steps required when porting for a more esoteric platform without good toolchain support.”
Check out this article from a Googler on using the toolkit with the Broadcom hardware.
It is a serious-duty project, not for the faint-hearted – for example, “preparing a Clang toolchain for arm-linux-gnueabihf
“, building an embedder, and building the Flutter application bundle itself… then you can run the apps!
See the full blog post on Medium.
The toolkit, note, is an open source project with a BSD-style licence.