【Flutter 系列——1】Flutter环境搭建及配置这一篇就够了(Windows)

2023-11-06

最近正式入坑Flutter,首先从环境搭建开始,看了网上好多关于Windows环境搭建的资料,基本都是按官方文档写的,看完的感受是,还不如直接去看官方文档。

        官方英文文档传送门:Get Started: Install on Windows 。     

本文主要总结我实际搭建的过程,最后发现不一定按网上那些博客或者官方文档写的来也可以搭建成功。

总的来说需要的也就4样东西,找齐了配置一下就OK;

(1)Flutter SDK (建议下载官网的,下载完直接能用)

(2)下载Dart插件

(3)下载Flutter插件

(4)准备ide(Androidstudio或者IntelliJ IDEA)配置flutter的SDK即可

说明

  •   IntelliJ IDEA 通过plugins下载的插件都是放在安装目录下的plugins文件中,自己看一下就明白。
  •   Androidstudio 通过plugins下载的插件是放在默认位置的,这一点和IntelliJ IDEA不太一样,我本地的默认的路径是在 C:\Users\.AndroidStudio3.1\config\plugins 中,假如你已经有了Dart和flutter插件,可以解压后直接拷贝到该目录下即可。

详细的安装过程如下:

目录

1. 安装Flutter SDK

2. 安装Dart和Flutter插件

3. 配置Dart和Flutter插件到我们的ide中

4. Flutter学习必备资源


1. 安装Flutter SDK

首先下载官方文档中 flutter_windows_v0.4.4-beta.zip 压缩包(如下图红框中所示),解压到自己指定的位置,解压完文件夹名称叫做flutter,这就是Flutter SDK了(后面再ide中配置的时候需要)。同时将该文件夹中的bin添加到环境变量中。

2. 安装Dart和Flutter插件

(1)Flutter需要如下两个插件的支持:

  •     Flutter 插件用来支撑Flutter开发者的流程(运行,调试,热加载,等等)
  •     Dart插件则提供代码分析(代码合法性校验,代码补全等等)

(2)然后在Androidstudio或者IntelliJ IDEA 中下载Dart插件,假如下不了,那就是没有进行科学上网的原因,也可以通过科学上网访问下面的链接进行下载。假如是自己通过如下链接下载的,则把下载后的zip包解压后将整个文件夹复制到你使用的ide的plugins文件夹中(整个文件夹拷贝到plugins下即可)。

https://plugins.jetbrains.com/pluginManager/?action=download&id=Dart&build=IU-172.3757.52&uuid=076050b4-d279-493c-945e-5fb3ff2af32e

(3)然后在Androidstudio或者IntelliJ IDEA 中下载flutter-intellij插件,假如下不了,那就是没有进行科学上网的原因,也可以通过科学上网访问下面的链接进行下载。假如是自己通过如下链接下载的,则把下载后的zip包解压后将整个文件夹复制到你使用的ide的plugins文件夹中(整个文件夹拷贝到plugins下即可)。

https://plugins.jetbrains.com/pluginManager/?action=download&id=io.flutter&build=IU-172.3757.52&uuid=076050b4-d279-493c-945e-5fb3ff2af32e

 

(4)说明:使用自己的ide安装步骤如下: 

        1)启动Android Studio 
        2) 打开插件面板如下图所示
        3)选择【Browse repositories…】,勾选Flutter plug-in 然后点击 install 
        4)当提示是否安装Dart插件时点击Yes 
        5)安装完成后重启AS

这里写图片描述

这里写图片描述

其实到这我们需要准备的东西已经全了,下面看如何配置。

 

3. 配置Dart和Flutter插件到我们的ide中

我使用的是IntelliJ IDEA,Androidstudio类似。

打开ide,Create New Project——>选择Flutter,选择SDK路径后Next——>命名项目名(小写),选择项目存储路径后ok。

然后进去以后可能你看到并没有下载项目资源,不要慌,我们配置一下,具体的如下所示,第一张是配置DartSDK的路径(指向前面flutter的SDK中的  bin\cache\dart.sdk),第二张是配置flutter SDK路径。配置完成后重启ide,再重新创建新项目即可,等待的时间会比较长,耐心等待完成就可以开启flutter之旅了。

 

另外有几点说明:

(1)本人是移动端开发所以不管是Androidstudio或者IntelliJ IDEA都已经搭建好了,相关环境的搭建可查阅网络。

(2)本文前面教程中是以IntelliJ IDEA为基础描述的,假如你使用的是Androidstudio的话需要升级版本至3.1以上,然后在Androidstudio的Plugins中下载Dart和Flutter插件然后重启,就会在创建项目的界面出现创建Flutter的选项,然后创建flutter项目,配置本文中描述的flutter-SDK路径就可以了。

(3)可能有人看网上的资料迷糊,如下图怎么来的,其实在咱们下载的flutter_windows_v0.4.4-beta.zip解压包中有flutter_console.bat,双击就可以唤起如下界面。它便是flutter的控制台,我们可以在flutter控制台运行 flutter doctor 命令, 检测是否有依赖项未安装。

(4)文中提到的资料包,有无法下载的可以在文末留言,给我个邮箱,我可以打包共享。

 

4. Flutter学习必备资源

  flutter学习必不可少的资源可阅读下篇文章(包括一些比较好的中文站,论坛,教程等):

        【Flutter 系列——2】Flutter和Dart进阶必备资料

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Flutter 系列——1】Flutter环境搭建及配置这一篇就够了(Windows) 的相关文章

  • 如何从另一个屏幕重置 Flutter 中的表单?

    如何重置 清除 flutter 应用程序中的表单字段 一旦数据提交到服务器 在我的应用程序中 我有 2 个页面 第一页输入表格详细信息 如姓名 地址等 第二页是上传图片 第一页将数据推送到第二页 这里我没有进行推送替换 意味着第二页位于第一
  • 如何抑制输出并检查命令是否成功?

    我正在尝试编写一个 powershell 脚本来测试 MySQL 登录是否成功 检查是否发生错误 我还想抑制命令的所有输出 成功或不成功 这些是我尝试过的事情 mysql u root password mypass e show data
  • 如何根据操作系统系列拥有不同的依赖关系

    我正在编写一个跨平台库 它具有特定于平台的依赖关系 一个用于类 UNIX 平台 一个用于 Windows 这些板条箱仅在特定平台上编译 因此我不能正常地将它们全部添加到依赖项下 在我实际使用的 Rust 代码中cfg属性 例如 cfg un
  • 寻找发音的正确性

    我需要借助 Microsoft 语音 SDK 来识别用户发音的 质量 System Speech Recognition 我使用的是 MS Speech Engine US 所以我实际需要的是找出说话者的声音与 北美 口音的接近程度 实现此
  • 没有工作树就无法使用 Git-Windows-git-pull

    我在 Windows 上遇到与 Git 相关的问题 无法从 git 上的存储库中提取更改 我能够添加 提交和推送我的更改 但不能拉取 它给了我一个错误 致命 C Git libexec git core git pull 不能在没有 工作树
  • 我可以使用什么 C++ 库在 Windows 上将 PDF 转换为图像?

    我正在开展一个需要分析图像的项目 这些图像的主要来源是网络摄像头 但最近我们被要求添加对上传文件和扫描仪的支持 这在大多数情况下都很好 只是他们希望我们能够使用 PDF 格式的文档 我需要一个原始像素位图进行处理 在 Mac 上 我可以使用
  • .NET 中的 vista/win7 放大 API

    Win7 Vista SDK中有magnification lib可供使用放大API http msdn microsoft com en us library ms692162 28VS 85 29 aspx对于C 如何在 NET win
  • Windows批量编程中读取文件名

    我想在Windows批处理编程中读取文件的名称 我尝试使用不同的方法但失败了请帮助 下面给出了场景 我的文件夹中有不同的文件 但所有文件的文件名长度相同 例如 1000342578 30062011 PDF 1000342329 30062
  • 在 Play 商店中发布 Android 应用程序后,Firebase 云消息传递无法正常工作

    因此 当我在 Android 或 iOS 应用程序中以调试或发布模式运行应用程序时 我的应用程序将收到 FCM 推送通知 完全没有问题 但是在 Google Play 应用商店上发布我的应用程序后 我的 Android 应用程序突然不会收到
  • Emacs 23.1.50.1 在 Windows XP 上随机挂起 6-8 秒

    我的 Windows XP 机器上有 EmacsW32 23 1 50 1 emacs 运行 它随机挂起 5 到 8 秒 非常令人沮丧 有人有解决办法吗 我什至尝试使用来自 gnu ftp 站点的 emacs win32 二进制文件 23
  • 如何以编程方式重新启动 Windows 资源管理器进程

    我正在开发 Windows shell 扩展 不幸的是 在更改 DLL 时 我必须重新启动 Windows 资源管理器 因为它将 DLL 保留在内存中 我从 Dino Esposito 找到了这个程序 但它对我不起作用 void SHShe
  • Flutter:酒吧失败

    Flutter 项目向我显示警告 Packages get has not been run以及建议的解决方案 获取依赖项 升级依赖项 Ignore 正如建议的Darky https stackoverflow com users 8394
  • 无法加载 php_curl

    我已经在WindowsXp上安装了php5 2 13 apache2 2 15 将C php添加到PATH ssystem变量中 我无法启用卷曲扩展 我配置了extension dir并删除了 在 php ini 中形成 php curl
  • 使用 Composer 安装 PHPUNIT

    我有一个关于 Symfony 2 的项目 我想在 Windows 7 上使用 PHPUNIT On githut phpunit is Composer Simply add a dependency on phpunit phpunit
  • 创建具有负边框半径的按钮并在 Flutter 中对齐它们

    我想建立一个这样的布局 其中两个外部元素是按钮 而内部元素是 TextField 如何在 Flutter 中创建这样的布局 我的想法是使用绝对位置来对齐每个元素的左侧 并使用标高来处理重叠 但我不确定这是最好的方法 而且我不知道如何创建按钮
  • C# 同步进程启动

    我正在尝试从一段代码启动一个进程 但我希望代码暂停执行 直到进程完成并退出 目前 我正在使用 System Diagnostics Process Start 类来启动 特别是 卸载程序 并且之后执行的代码确实依赖于安装程序卸载程序在恢复执
  • Windows 通用应用程序串行端口无法打开,SerialDevice.FromIdAsync 始终为 null

    我正在尝试在 Windows 通用应用程序中使用串行端口 我一直在使用微软的串行示例应用程序作为模板 但是我遇到了一个相当奇怪的问题 var dis await DeviceInformation FindAllAsync SerialDe
  • 使用 Windows Media Foundation 枚举时如何获取硬件 ID

    我在用MFEnumDeviceSources 枚举连接的设备 我正在寻找一个已连接两个的特定网络摄像头 枚举工作正常 我可以打印友好名称这是FLIR Video对于我的两台相机 我正在努力弄清楚如何从 Media Foundation 设备
  • 读取进程的进程内存不会返回所有内容

    我正在尝试扫描第三方应用程序的内存 我已经查到地址了 现在是在0x0643FB78 问题是 从那以后我就再也爬不上去LPMODULEENTRY32 gt modBaseAddr is 0x00400000 and LPMODULEENTRY
  • 当项目位于同步文件夹中时,Flutter 运行和清理错误“Flutter 无法删除目录”

    完整错误 Flutter failed to delete a directory at build flutter assets The flutter tool cannot access the file or directory P

随机推荐

  • 动态规划快速入门

    更多内容 欢迎关注微信公众号 全菜工程师小辉 公众号回复关键词 领取免费学习资料 动态规划算法一直是面试手撕算法中比较有挑战的一种类型 很多的分配问题或者调度问题实际上都可能用动态规划进行解决 当然 如果问题的规模较大 有时候会抽象模型使用
  • 【CV】第 14 章:用最少的数据点训练

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • 情人节-动态爱心背景(html5+css+js)

    一 效果图 二 源代码
  • GDAL对TIF创建内建金字塔一个问题

    gdalwarp输出tif图像的时候 默认如果没有使用BIGTIFF YES选项 则会根据输出影像的大小进行判断 低于4G则不适用bigtiff格式 对于非bigtiff图像 如果这时候使用gdaladdo创建金字塔 内建模式 如果出现了文
  • SQL——游标

    非原创 东拼西凑来的 游标 cursor 是一个存储在MySQL服务器上的数据库查询 它不是一条SELECT语句 而是被该语句检索出来的结果集 在存储了游标之后 应用程序可以根据需要滚动或浏览其中的数据 游标主要用于交互式应用 其中用户需要
  • 业务安全及实战案例

    业务安全 关于漏洞 注入 业务逻辑 信息泄露 A04 2021 Insecure Design 在线靶场PortSwigger 1 概述 1 1 业务安全现状 1 1 1 业务逻辑漏洞 近年来 随着信息化技术的迅速发展和全球一体化进程的不断
  • php读写excel文件

    1 引入包 有不少提供读写excel文件的包 这里选择比较常用的一个 加到自己的项目里就好了 phpoffice phpspreadsheet 1 8 2 2 读取文件
  • Android中的USB中的UsbAccessory和UsbDevice的区别

    转载自 http www crifan com android usb usbaccessory vs usbdevice utm source tuicool utm medium referral UsbAccessory和UsbDev
  • MySQL更新表的记录详解

    目录 前言 前言 一 更新数据记录 1 特定数据记录 2 所有数据记录 总结 前言 更新数据记录是数据操作中常见的操作 可以更新表中已经存在数据记录中的值 在MySQL中可以通过UPDATE语句来实现更新数据记录 该SQL语句可以通过如下几
  • 5个炫酷登录页面,拿去就能用(附源码)

    5个炫酷登录页面 拿去就能用 附源码 登录页面 觉得显示效果很好 借鉴其他博主的 喜欢的可以收藏关注 不商用 只为学习传播 目录 1 炫酷星空登录 2 动态云层登录 3 深海灯光水母登录 4 炫酷蛛网登录 5 彩色气泡登录 1 炫酷星空登录
  • 响应式网页设计(Responsive Web Design)的核心原理

    聚沙成塔 每天进步一点点 专栏简介 响应式网页设计的核心原理 优点和缺点 优点 缺点 写在最后 专栏简介 前端入门之旅 探索Web开发的奇妙世界 欢迎来到前端入门之旅 感兴趣的可以订阅本专栏哦 这个专栏是为那些对Web开发感兴趣 刚刚踏入前
  • CVE-2022-26134 Confluence OGNL RCE 复现

    一 漏洞概述 Atlassian Confluence 是一款各企业广泛使用的 wiki 系统 在Atlassian Confluence Server and Data Center上存在OGNL 注入漏洞 远程攻击者在未经身份验证的情况
  • Servlet之间传递数据

    转自 http jallay iteye com blog 256004 1 如何让用户的请求数据从一个Servlet传递给另一个Servlet 第一种方式 通过超链接传递数据 第二种方式 通过表传递取参数 第三种方式 通过setAttri
  • 『数据结构』B树(B-Tree)及其变体 B+树,B*树

    原文地址 1 背景 当有大量数据储存在磁盘时 如数据库的查找 插入 删除等操作的实现 如果要读取或者写入 磁盘的寻道 旋转时间很长 远大于在 内存中的读取 写入时间 平时用的二叉排序树搜索元素的时间复杂度虽然是 O log2n O l o
  • BBR拥塞算法的简单解释

    TCP BBR的ACM论文中 开篇就引入了图1 以此来说明BBR算法的切入点 为何当前基于丢包探测的TCP拥塞控制算法还有优化空间 BBR算法的优化极限在哪儿 图1 为了理解这张图花了我整整一个晚上的时间 它使我重新审视了所有基础概念 而我
  • vue2.js初探

    今天学习了一下vue2 js 感觉很好用 一个是把相同的功能组件化了 把他定义一个标签 不用多次开发重复的代码 直接加标签就可以了 还有就是他把数据和标签的显示修改完全分开了 之前用jQuery开发 如果数据变动了 需要用jquery回调事
  • 计算机网络第八版——第一章课后题答案(超详细)

    第一章 该答案为博主在网络上整理 排版不易 希望大家多多点赞支持 后续将会持续更新 可以给博主点个关注 第二章 答案 1 01 计算机网络可以向用户提供哪些服务 解答 这道题没有现成的标准答案 因为可以从不同的角度来看 服务 首先要明确的是
  • ThreadX 内部系统时钟服务

    ThreadX中 有两个函数可以获取和设置内部系统时钟服务 tx time get 获取当前时间 tx time set 设置当前时间 tx time get 获取当前时间 原型 ULONG tx time get VOID 描述 这项服务
  • VUE安装问题

    启动应用 npm run serve 默认进入为 http localhost 8080 由于部署在虚拟化linux上 需远程访问 需将localhost修改为服务器IP 1 修改package json 新增host 0 0 0 0 2
  • 【Flutter 系列——1】Flutter环境搭建及配置这一篇就够了(Windows)

    最近正式入坑Flutter 首先从环境搭建开始 看了网上好多关于Windows环境搭建的资料 基本都是按官方文档写的 看完的感受是 还不如直接去看官方文档 官方英文文档传送门 Get Started Install on Windows 本