SuperAPI AI 工具集

flutter-environment-setup-windows

部署与运维

查看项目

更新于 10-14 17:18

技能介绍

用途

该技能用于在 Windows 主机上配置 Flutter 应用开发环境,支持构建面向 Windows Desktop 和 Android 的 Flutter 应用。它会分析系统需求、修改环境变量、安装必要的 C++ 工具链、管理平台相关配置,并为本地 Windows 应用部署生成自签名证书。技能假设主机运行 Windows 10 或 11,且具备可用于系统修改的管理员权限。

主要能力

  • 配置 Flutter SDK 与环境变量:将 Flutter SDK 解压到安全、用户可写目录(例如 C:\develop\flutter),不要把 SDK 放在 C:\Program Files\ 下;通过 PowerShell 将 Flutter bin 目录追加到用户 PATH。
  • 安装 Windows 工具链:编译 Windows 桌面应用严格需要 Visual Studio(不是 VS Code),需安装“使用 C++ 的桌面开发”工作负载;命令行自动化可使用工作负载 ID:vs_setup.exe --add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended。
  • 按目标平台配置:技能会先询问用户配置哪些目标平台(A)Windows Desktop、(B)Android,还是(C)两者;随后按选择启用或停用对应平台支持。
  • 配置 Android 工具链:通过 SDK Manager 安装 Android Studio 和 Android SDK 命令行工具;对物理设备启用“开发者选项”和“USB 调试”并安装 OEM USB 驱动;对模拟器在 AVD Manager 的“模拟性能”中选择“硬件”图形加速以启用硬件加速。
  • 构建与打包 Windows 桌面应用:执行 flutter build windows;手动打包需从 build\windows\runner\Release\ 收集可执行文件(<project_name>.exe)、所有 .dll 文件(如 flutter_windows.dll)、data 目录,并将 Visual C++ 可再发行组件(msvcp140.dll、vcruntime140.dll、vcruntime140_1.dll)放在 .exe 旁边。可选:修改 windows/CMakeLists.txt 中的 BINARY_NAME 以重命名生成的可执行文件。
  • 为 MSIX 打包生成自签名证书(OpenSSL):若需本地测试 MSIX 包,可生成 .pfx 证书,要求 OpenSSL 在 PATH 中。
  • 验证与修复反馈闭环:执行 flutter doctor -v 验证环境,并根据报告的问题给出修复指引。

使用方式

  1. 配置 Flutter SDK 与环境变量:解压 SDK 到用户可写目录,执行给定的 PowerShell 命令将 Flutter bin 追加到用户 PATH(命令会先检查是否已存在,避免重复添加)。
  2. 安装 Windows 工具链:安装 Visual Studio 及“使用 C++ 的桌面开发”工作负载。
  3. 确定目标平台:技能会暂停并询问用户:“Which target platforms are you configuring for this environment? (A) Windows Desktop, (B) Android, or (C) Both?”
    • 若选 (A) Windows Desktop:继续第 5 步,并在不需要时停用 Android 和 Web:
      flutter config --no-enable-android
      flutter config --no-enable-web
      flutter config --enable-windows-desktop
      
    • 若选 (B) Android:继续第 4 步,并在不需要时停用 Windows 桌面:
      flutter config --no-enable-windows-desktop
      
    • 若选 (C) Both:执行第 4 步和第 5 步,确保两个平台均已启用。
  4. 在 Windows 上配置 Android 工具链:安装 Android Studio 与 Android SDK 命令行工具;配置物理设备或模拟器。
  5. 构建与打包 Windows 桌面应用:执行 flutter build windows,并按需收集打包文件;可选修改 BINARY_NAME。
  6. 生成自签名证书(可选,用于 MSIX):确保 OpenSSL 在 PATH 中,然后执行:
    openssl genrsa -out mykeyname.key 2048
    openssl req -new -key mykeyname.key -out mycsrname.csr
    openssl x509 -in mycsrname.csr -out mycrtname.crt -req -signkey mykeyname.key -days 10000
    openssl pkcs12 -export -out CERTIFICATE.pfx -inkey mykeyname.key -in mycrtname.crt
    
    并指示用户将 CERTIFICATE.pfx 安装到本地计算机证书存储的“受信任的根证书颁发机构”下。
  7. 验证与修复:执行 flutter doctor -v。
    • 若报告“cmdline-tools component is missing”:指示用户打开 Android Studio -> Tools -> SDK Manager -> SDK Tools,勾选“Android SDK Command-line Tools”。
    • 若报告 Visual Studio 工具链问题:确认 Microsoft.VisualStudio.Workload.NativeDesktop 工作负载已完整安装。
    • 若报告“flutter is not recognized”:确认 PowerShell PATH 注入成功并重启终端进程。

适用场景

  • 需要在 Windows 10 或 11 上从零搭建 Flutter 开发环境的开发者。
  • 需要构建面向 Windows Desktop 或 Android 的 Flutter 应用。
  • 需要为本地 Windows 应用部署制作 MSIX 自签名证书的测试场景。

限制与约束

  • 输出中不得包含外部 URL 或超链接。
  • 不建议将 Flutter SDK 放在需要提权访问的目录(如 C:\Program Files)。
  • 不得混淆 Visual Studio Code 与 Visual Studio;Windows 上的 C++ 工具链严格需要后者。
  • 除非另有说明,始终假设用户在标准 Windows 命令提示符或 PowerShell 环境中操作。
  • 绝不能跳过 flutter doctor 验证步骤,该步骤是确认环境完整性的强制要求。
  • 技能假定主机提供管理员权限,但具体权限细节资料中未进一步说明。