• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

sony/flutter-embedded-linux: Embedded Linux embedding for Flutter

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

sony/flutter-embedded-linux

开源软件地址(OpenSource Url):

https://github.com/sony/flutter-embedded-linux

开源编程语言(OpenSource Language):

C++ 81.2%

开源软件介绍(OpenSource Introduction):

Embedded Linux (eLinux) embedding for Flutter

image

build-test

This project was created to develop non-official embedded Linux embeddings of Flutter. This embedder is focusing on embedded Linux system use cases. It is also implemented based on Flutter desktop for Windows and has some unique features to use it in embedded systems.

flutter-elinux

Note that this project is the source code of the embedder. If you develop your flutter app for eLinux, use flutter-elinux, which is a non-official extension to the Flutter SDK to build and debug Flutter apps for embedded Linux devices.

Objective & Goal

Our objective is to use Flutter in embedded systems. We're developing this embedder to use Flutter in embedded products. Ultimately we would like to propose and contribute this software to the mainline of Flutter Engine, which means we would like to add an embedded systems version into the Flutter repo for all embedded developers. Please note that this is just our ideal, not the official opinion of the Flutter community.

We would be grateful if you could give us feedback on bugs and new feature requests. We would like to cover the specifications of general-purpose embedded systems.

Features

  • Flutter embedder optimized for Embedded Systems
    • Lightweight than Flutter desktop for Linux (Not using X11 and GTK)
    • Minimal dependent libraries
    • The main target of this embedder is Arm64 devices. We haven't confirmed in Arm 32bit (ARMv7, armhf) devices
  • Display backend support
  • Always single window fullscreen
    • You can choose always-fullscreen or flexible-screen (any size) only when using Wayland/X11 backend
  • Keyboard, mouse and touch inputs support
  • Equivalent quality to Flutter desktops
  • API compatibility with Flutter desktop for Windows and GLFW
    • APIs such as MethodChannel and EventChannel are completely the same with them

Companion repos

Repo Purpose
flutter-elinux Flutter tools for eLinux
flutter-elinux-plugins Flutter plugins for eLinux
meta-flutter Yocto recipes of eLinux embedding for Flutter

Documentation

Documentation for this software can be found at Wiki.

Supported platforms

This embedder supports x64 and Arm64 (aarch64, ARMv8) architectures on Linux which supports either Wayland backend or DRM backend.

Tested devices

Board / SoC Vendor OS / BSP Backend Status
Jetson Nano NVIDIA JetPack 4.3 Wayland ✔️
Jetson Nano NVIDIA JetPack 4.3 DRM ✔️ (#1)
Raspberry Pi 4 Model B Raspberry Pi Foundation Ubuntu 20.10 Wayland ✔️
Raspberry Pi 4 Model B Raspberry Pi Foundation Ubuntu 20.10 DRM ✔️ (#9)
Raspberry Pi 3 Model B Raspberry Pi Foundation Raspberry Pi OS bullseye Wayland ✔️
i.MX 8MQuad EVK NXP Sumo (kernel 4.14.98) Wayland ✔️
i.MX 8M Mini EVKB NXP Zeus (kernel 5.4.70) Wayland ✔️
RB5 Development Kit Qualcomm Ubuntu 18.04.05 DRM ✔️
Zynq Xilinx - - Not tested
Desktop (x86_64) Intel Ubuntu 20.04 Wayland ✔️
Desktop (x86_64) Intel Ubuntu 20.04 DRM ✔️
Desktop (x86_64) Intel Ubuntu 20.04 X11 ✔️
QEMU (x86_64) QEMU AGL (Automotive Grade Linux) koi Wayland ✔️
QEMU (x86_64) QEMU AGL (Automotive Grade Linux) koi DRM ✔️

Note

  • i.MX 8M platforms don't support applications using EGL on GBM, which means the DRM-GBM backend won't work on i.MX 8M devices.

Tested Wayland compositors

Weston ✔️ Sway ✔️ Wayfire ✔️ Gnome ✔️ Phosh ✔️
Cage ✔️ Lomiri ✔️ Plasma Wayland ✔️ Plasma Mobile ✔️ GlacierUX ✔️

Contributing

Now, we cannot accept any Pull Request (PR). Because We are building a system (e.g. CLA) to accept PRs, so please wait for a while the system is getting ready! However, we are always welcome to report bugs and request new features by creating issues.

With the assumption, our final goal of this software openly is to be merged this embedder into Flutter Engine after getting feedbacks. And Google CLA will be required when we do that in the future. Therefore, we cannot easily accept an external PR. However, you can free to create issues for reporting bugs and requesting new features.

See also: Contributing to the Flutter engine




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
lra/mackup: Keep your application settings in sync (OS X/Linux)发布时间:2022-08-15
下一篇:
RobertCNelson/linux-dev发布时间:2022-08-15
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap