温馨提示×

centos如何使用flutter进行跨平台开发

小樊
44
2026-01-08 02:10:43
栏目: 智能运维

CentOS 上使用 Flutter 进行跨平台开发

一 环境准备与安装

  • 安装基础依赖(CentOS 7/8 示例)
    • 安装工具链与图形依赖:sudo yum install -y curl git unzip xz-utils zip libglu1-mesa
    • 可选:安装桌面环境(无头服务器可跳过):sudo yum groupinstall -y “GNOME Desktop” “Graphical Administration Tools”
  • 下载并配置 Flutter SDK
    • 建议版本:Flutter 3.x 稳定版(自带 Dart)
    • 解压至全英文路径(示例):tar -xzf flutter_linux_x.y.z-stable.tar.xz -C /opt
    • 配置环境变量(~/.bashrc 或 ~/.zshrc):export PATH=“$PATH:/opt/flutter/bin”
    • 使配置生效:source ~/.bashrc(或 source ~/.zshrc)
  • 国内镜像加速(可选,提升下载速度)
    • 临时:export PUB_HOSTED_URL=https://pub.flutter-io.cn
    • 永久:在 ~/.bashrc 或 ~/.zshrc 中追加上面两行并 source
  • 验证安装:flutter doctor(按提示逐项修复缺失项)

二 启用多平台支持与创建项目

  • 启用桌面与 Web 平台(桌面端需 Flutter 3.0+
    • flutter config --enable-web
    • flutter config --enable-linux-desktop
    • 查看已启用设备:flutter devices
  • 创建与补齐平台
    • 新建项目:flutter create my_app && cd my_app
    • 已有项目补齐缺失平台目录:flutter create .
  • 在 CentOS 上可直接运行 Linux 桌面端:flutter run -d linux

三 在 CentOS 上运行与调试

  • 运行 Linux 桌面应用
    • 直接运行:flutter run -d linux
    • 热重载:保存文件后按 r(在终端中)或在 IDE 使用 Hot Reload
  • 连接并运行 Android 设备/模拟器
    • 准备:安装 Android Studio,配置 Android SDK命令行工具(Command-line Tools)
    • 接受许可证:flutter doctor --android-licenses
    • 连接真机(开启 USB 调试)或创建 AVD 模拟器,运行:flutter run -d android
  • 运行 Web
    • 浏览器运行:flutter run -d chrome
  • 常用调试命令
    • 查看设备:flutter devices
    • 清理构建:flutter clean && flutter pub get

四 构建与发布

  • 常用构建命令
    • Android:flutter build apk 或 flutter build appbundle
    • Web:flutter build web
    • Linux:flutter build linux
  • 产物路径与说明
    • Android:build/app/outputs/flutter-apk/(APK)或 build/app/outputs/bundle/release/(AAB)
    • Web:build/web/
    • Linux:build/linux/x64/release/bundle/
  • 其他平台说明
    • iOS 开发必须在 macOS 且使用 Xcode
    • Windows 桌面开发需 Windows 主机(CentOS 无法构建 Windows 目标)

五 常见问题与实用建议

  • 环境与依赖
    • 路径必须为全英文,避免中文或空格导致异常
    • 配置镜像后需重启终端或 source 配置文件
    • 全程用 flutter doctor 定位问题,优先修复报错项
  • Android 相关
    • 若提示缺少命令行工具:在 Android Studio 的 SDK Tools 勾选 Android SDK Command-line Tools (latest)
    • 许可证未接受:执行 flutter doctor --android-licenses 并全部选择 y
  • 桌面与模拟器
    • CentOS 图形环境缺失会导致 Linux 桌面运行异常,建议安装 GNOME 桌面或使用 X11 转发
    • Android 模拟器需要硬件虚拟化支持(BIOS 开启 VT-x/AMD-V),服务器环境通常不建议使用模拟器
  • 插件与平台适配
    • 选插件时确认其支持 Web/Desktop;Web 端不支持 dart:io,需用对应 Web API 替代
    • 使用 kIsWebPlatform 做平台分支,结合 LayoutBuilder/MediaQuery 做响应式布局

0