跳转至

打开 PowerShell(无需管理员权限)

1 特点

Flutter 主打原生级性能和 UI 一致性,适合追求极致体验的移动端 / 桌面端应用,比如电商、社交、工具类 App;

Flutter 核心特点:

  1. 原生级性能体验:内置 Skia(谷歌开源的 2D 图形渲染引擎),不通过原生系统的控件桥接,动画、交互的流畅度几乎和原生 iOS/Android App 无差别,复杂交互(如电商动效、游戏化界面)表现远超传统跨端框架。
  2. 极致的 UI 一致性:因为是自绘 UI,不管在 iOS、Android 还是 Windows/macOS 桌面端,同一个组件的显示效果、交互逻辑完全一致,解决了传统跨端框架 “端上样式不一致” 的痛点。
  3. 高效的开发体验

    • 支持热重载:修改代码后几秒钟就能看到效果,无需重新编译,大幅提升开发效率;
    • 采用 “一切皆 Widget” 的编程模型,UI 组件化程度极高,可高度自定义,能轻松实现设计师的复杂视觉设计。
  4. 语言与适配范围:基于 Dart 语言(谷歌专为跨端开发设计,强类型 + 简洁语法,学习成本中等);核心适配 iOS/Android,也可扩展到 Web、桌面端、嵌入式设备,但对国内小程序的支持较弱(需第三方插件适配,体验一般)。

2 比对

维度 Uni-app Flutter
底层语言 Vue.js(JavaScript) Dart
核心优势 多端覆盖(尤其小程序) 原生级性能 + UI 一致性
学习成本 低(前端开发者友好) 中(需学 Dart + 新范式)
主要适配场景 国内全端(小程序为主) 移动端(iOS/Android)+ 桌面

3 Windows 11 安装 Flutter 完整指南

3.1 安装 Flutter SDK

3.1.1 创建目录并克隆代码

# 打开 PowerShell(无需管理员权限)
mkdir D:\flutter
cd D:\flutter

# 克隆稳定版(如果网络慢,多试几次)
git clone https://github.com/flutter/flutter.git -b stable .

3.1.2 配置国内镜像(关键步骤)

# 设置用户级环境变量(永久生效)
[Environment]::SetEnvironmentVariable("PUB_HOSTED_URL", "https://pub.flutter-io.cn", "User")
[Environment]::SetEnvironmentVariable("FLUTTER_STORAGE_BASE_URL", "https://storage.flutter-io.cn", "User")

# 刷新当前会话
$env:PUB_HOSTED_URL = "https://pub.flutter-io.cn"
$env:FLUTTER_STORAGE_BASE_URL = "https://storage.flutter-io.cn"

3.1.3 添加到系统路径

# 将 Flutter 加入 Path
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";D:\flutter\bin", "User")

# 刷新当前会话
$env:Path = $env:Path + ";D:\flutter\bin"

3.2 首次运行与诊断

3.2.1 执行环境检查

flutter doctor

预期现象: - 首次运行会显示 Building flutter tool... - 依赖下载完成后显示 Got dependencies. - 可能遇到 git fetch 网络警告(可忽略) - 最终显示诊断结果

3.2.2 典型诊断结果

[√] Flutter (Channel stable, 3.x.x, ...)
[√] Windows Version (...)
[X] Android toolchain - develop for Android devices
    X Unable to locate Android SDK.
[√] Chrome - develop for the web
[X] Visual Studio - develop Windows apps
    X Visual Studio not installed
[√] Connected device (...)
[√] Network resources

3.3 安装开发组件(按需选择)

3.3.1 方案 A:Web 开发(最简配置,5分钟)

无需额外安装,直接创建项目:

# 创建 Web 项目
cd D:\
flutter create my_web_app
cd my_web_app

# 运行 Web 应用
flutter run -d chrome

3.3.2 方案 B:Android 开发(需 20分钟)

步骤 1:安装 Android Studio

  1. 下载 Android Studio
  2. 安装时勾选:
  3. ✅ Android SDK
  4. ✅ Android SDK Platform
  5. ✅ Android Virtual Device

步骤 2:配置环境变量

# 设置 Android SDK 路径
[Environment]::SetEnvironmentVariable("ANDROID_HOME", "$env:LocalAppData\Android\Sdk", "User")
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";%ANDROID_HOME%\platform-tools", "User")

# 刷新当前会话
$env:ANDROID_HOME = "$env:LocalAppData\Android\Sdk"

# 配置 Flutter 使用此 SDK
flutter config --android-sdk "$env:LocalAppData\Android\Sdk"

# 接受许可协议(全部选 y)
flutter doctor --android-licenses

3.3.3 方案 C:Windows 桌面开发(需 30分钟)

步骤 1:安装 Visual Studio 2022 Community

  1. 下载 Visual Studio 2022
  2. 安装工作负载:"使用 C++ 的桌面开发"
  3. 必须包含组件:
  4. MSVC v143 - VS 2022 C++ x64/x86 生成工具
  5. Windows 11 SDK
  6. C++ CMake 工具

步骤 2:验证安装

flutter doctor
# 应显示 [√] Visual Studio - develop Windows apps

3.4 完整验证测试

# 1. 创建测试项目
cd D:\
flutter create test_project
cd test_project

# 2. 测试不同平台
flutter run -d chrome      # Web 版
flutter run -d windows     # Windows 桌面版(需安装 VS)
flutter run -d android     # Android 版(需连接手机或模拟器)

# 3. 构建发布版本
flutter build web --release        # Web 发布
flutter build windows --release      # Windows 发布
flutter build apk --release          # Android APK

3.5 常见问题处理

问题 解决方案
Got socket error trying to find package 检查镜像环境变量是否设置正确,重新设置后重试
Unable to 'pub upgrade' flutter tool 网络超时,等待自动重试或切换清华镜像
git fetch 连接重置 可忽略,不影响核心功能;或配置 Git 代理
Android SDK 未找到 安装 Android Studio 并配置 ANDROID_HOME
Visual Studio not installed 安装 VS2022 并勾选"C++桌面开发"工作负载

3.6 关键检查清单

# 验证所有配置
flutter doctor -v

# 应显示:
# [√] Flutter (Channel stable, 3.x.x)
# [√] Windows version
# [√] Android toolchain(如安装)
# [√] Chrome
# [√] Visual Studio(如安装)
# [√] Connected device
# [√] Network resources

3.7 快速部署 Web 应用

# 构建 Web 版本
flutter build web --release

# 本地测试(使用 Python 简易服务器)
cd build\web
python -m http.server 8080
# 浏览器访问 http://localhost:8080

# 或部署到 Nginx(安装后)
# 复制 build\web 内容到 Nginx 的 html 目录