Flutter开发——Linux嵌入式应用开发

上文中介绍了Linux平台下Flutter环境搭建和桌面应用开发,现在需要更深入了解如何将该应用运行在Linux系统的嵌入式设备上。

sony公司提供了一种在linux嵌入式设备上运行flutter的解决方案Embedded Linux ,并提出flutter-elinux作为Flutter sdk的一个扩展,用来在嵌入式Linux设备上创建和调试Flutter应用。

一、flutter架构
overview.png
二、flutter-elinux使用

安装及示例

  1. 建议在已安装flutter的系统上进行配置,确保依赖项已全部下载好
    sudo apt install unzip curl clang cmake pkg-config
  2. 执行如下语句
git clone https://github.com/sony/flutter-elinux.git
sudo mv flutter-elinux /opt/

~/.bashrc中配置export PATH=$PATH:/opt/flutter-elinux/bin

  1. 执行flutter-elinux devices观察当前命令是否生效,若未生效,检查PATH配置是否正确。
  2. 执行
sudo apt install weston 
weston &

打开weston虚拟机,此时发现flutter-elinux devices连接设备变成两个,如下图

  1. 保持weston窗口打开,新开窗口,执行如下代码等待编译完成
flutter-elinux create sample
cd sample
flutter-elinux run -d elinux-wayland

即可编译及运行基于wayland显示后端的demo


demo.png

避坑

  • flutter-elinux建议在Ubuntu20.0以上系统编译,否则会存在依赖项版本偏低,cmake版本低,Xdg-shell不可用等问题。
  • 后续将对编译文件移植到真实设备进行进一步研究。
三、编译文件移植

通过PC端本地编译出的可执行文件一般基于x86_64平台,需采用交叉编译方法,在PC端编译出arm64版本文件,使用的交叉编译工具链根据硬件设备的系统架构不同而不同。

你可能感兴趣的:(Flutter开发——Linux嵌入式应用开发)