当前位置: 首页 > news >正文

Flutter 如何使用fvm进行多项目sdk管理

1. 设置全局项目sdk

fvm global <version>

查看当前已经安装的版本列表:

fvm list

2. 设置项目的flutter sdk

fvm use xxx

在Android studio中进行的flutter 项目开发,通过上面的语句修改该项目的sdk后,运行模拟器实际未切换成功。需要配置Android studio的flutter sdk路径

  1. 打开 Android Studio,并打开你刚配置的 callapp 项目。

  2. 进入 IDE 的设置 (Settings / Preferences):

    • macOS: Android Studio > Settings...

    • Windows/Linux: File > Settings...

  3. 在设置菜单中,导航至 Languages & Frameworks > Flutter

  4. 你会看到 "Flutter SDK path" 字段。

    • [错误操作] 它的默认值不应该.../fvm/default 或任何全局路径(如 .../fvm/versions/3.24.5)。

    • [正确操作] 点击路径输入框最右侧的 ... 按钮。

  5. 在弹出的文件选择器中,必须选择指向你当前项目内部 FVM 生成的快捷方式。

    • 路径: [你的项目根目录]/.fvm/flutter_sdk

    • 示例: /Users/shenchenglin/callapp/.fvm/flutter_sdk

    • (提示:.fvm 是一个隐藏文件夹,如果找不到,请确保你的文件选择器已开启“显示隐藏文件”)

步骤三:应用并重启IDE

  1. 选择 flutter_sdk 文件夹后,点击 OK

  2. 你会看到设置页面的 "Version" 字段自动刷新,显示为你在步骤一中指定的版本(例如:Flutter 3.32.7)。

  3. 点击 Apply (应用),然后点击 OK (确定) 关闭设置。

  4. [关键步骤] 立即重启 Android Studio。

    • 推荐方式: 点击菜单栏 File > Invalidate Caches / Restart... > Just Restart

    • 目的: 确保 IDE 彻底卸载旧的 SDK 缓存并加载新 SDK 的完整环境(包括 Dart 分析器)。

5. 验证步骤 (Verification)

  1. 检查设置: 重启后,再次进入 Languages & Frameworks > Flutter,确认 "Flutter SDK path" 仍然指向 .../callapp/.fvm/flutter_sdk,并且 "Version" 显示为正确的版本。

  2. 执行 Pub Get: 打开 pubspec.yaml 文件,点击 IDE 窗口顶部提示的 Pub get 按钮。

  3. 检查结果: 观察 "Messages" 或 "Run" 窗口,pub get 应该会成功执行,不应再出现任何关于 Dart SDK 版本(如 is 3.5.4)的错误。

  4. 最终测试: 点击 IDE 的绿色“运行”按钮(图一),项目应能正常编译并运行到模拟器或真机上。

6. 后续维护与常见问题 (FAQ)

  • Q: 如果以后升级了项目的 Flutter 版本(例如 fvm use 3.35.0),是否需要重复这个SOP?

    • A: 不需要。 因为 IDE 监视的是 .fvm/flutter_sdk 这个“快捷方式”,而不是快捷方式指向的“实际内容”。当你运行 fvm use 3.35.0 时,FVM 会自动更新这个快捷方式。你唯一需要做的就是重启 Android Studio(或至少点击 Pub get)来让 IDE 重新加载 SDK。

  • Q: 我找不到 .fvm 文件夹?

    • A: 它是隐藏文件夹。在 macOS 的访达 (Finder) 中按 Cmd + Shift + . (点) 来显示隐藏文件。

http://www.dtcms.com/a/577351.html

相关文章:

  • 【Git】-- Rebase 减少 Commit 次数指南
  • 北京网站设计培训学校cn 域名网站
  • 广州广州网站建设公司阿里云网站模板
  • SpringBoot教程(三十二)| SpringBoot集成Sentinel
  • RAGFlow与Dify知识库:对比选型与技术落地解析
  • 广告拦截双选指南:uBlock Origin 与「广告拦截器」
  • 神经网络组植物分类学习 - 阶段学习规划14
  • 张家界市住房和城乡建设局网站WordPress加速优化方案
  • 晶晨S905X芯片_通刷固件包_ATV 安卓9.0_IPV6_中文线刷固件包
  • 战神引擎传奇手游【1.76盛战传奇免授权版[摸摸登陆器]】最新整理Win系复古服务端+安卓苹果双端+GM授权物品后台+详细搭建教程
  • npm因为在此系统上禁止运行脚本
  • Eclipse 运行配置详解
  • Linux NAND闪存存储系统全面解析:从原理到实践
  • 现代C++零基础到工程实战
  • 做网站的软件初中生长丰县重点工程建设管理局网站
  • 商城网站开发的完整流程wordpress清楚所有评论
  • Spring Boot中使用 MDC实现请求TraceId全链路透传
  • Spring + Spring Boot + Spring Cloud 常见面试题清单
  • 对接大疆上云api---实现直播效果
  • ffmpeg学习记录
  • 建站网站破解版什么是网站建设需求分析
  • Lua 面向对象编程完全指南:从元表到私密性,解锁灵活封装技巧
  • linux用户及权限管理
  • 北京手机网站建设外包WordPress里面自定义功能
  • 网站建设怎么更改图片网站服务器建设合同
  • 快速理解卷积神经网络CNN
  • IPD PDT 核心组成员来源及扩展组配置说明
  • 51项目分享:基于51单片机仓库环境检测系统
  • Vivado 2015在WIN11电脑综合一直卡在Translating synthesized netlist不动。
  • 绘制软件的状态机图