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

flutter环境搭建实践

Dart

Dart 是一种客户端和服务器端的编程语言,最早由 Google 提出。它被设计用于构建高性能、高度可伸缩和可靠的应用程序。Dart 可以编译成本地代码或者在虚拟机中直接运行。在移动应用开发中,Dart 主要用于开发 Flutter 应用。

Flutter 和 Dart 的关系

Flutter 是一个使用 Dart 语言开发的跨平台移动应用框架。它能够在 iOS 和 Android 上构建高性能、高保真度的应用。Flutter 的核心是 Dart 语言,它提供了丰富的 API 和开发工具,以支持开发者构建出色的移动应用。

在 Android Studio 中,我们可以使用 Dart 语言来开发跨平台的移动应用程序。然而,有时候我们可能遇到 Dart 版本低于 Android Studio 的问题,这会导致一些功能无法使用或者出现错误。为了解决这个问题,我们可以升级 Dart 版本到最新的稳定版。

本人安装的版本如下:

java: V17

安装Flutter

在中国网络环境下使用 Flutter - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

关于flutter SDK的使用,上面的官方网站上写的很清楚,照着做就好,注意不要从其他的博客里面跳着操作,这样可能发生不可测的错误,造成项目无法启动,无法识别设备,新建项目没有网络等等问题。因为不同的版本会有很多不同的特殊情况。

配置环境变量

win+s 吊起搜索

进行如下选择 

 命令行方式如下图

注意,配置在用户变量还是环境变量取决于自己,区别是:系统级任何用户任何路径都可以直接使用;用户级是配置用户下任何路径都可以直接使用。

下载Flutter SDK(软件开发套件)

Flutter SDK 归档列表 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

下载好后,将文件放到 D盘或其它非系统盘,这里我放在 D:\soft\flutter

配置使用套件的环境变量

指定到bin目录(虽然点击.bat文件就可以运行,但是为了方便能够在cmd窗口直接运行flutter,所有还是要去配置环境变量)(注意:如果使用fvm管理flutter版本,需要将其删除

 检查是否成功

打开终端,输入命令

flutter --version 查看是否安装成功

下载Android Studio

下载 Android Studio 和应用工具 - Android 开发者  |  Android Developers (google.cn)

双击运行安装,一路next,直到这一步,选择自己需要安装的目录(需要好几个G,磁盘警告!!!)

选好之后点击 Next 下一步(PS:这里没有其他骚操作,不要乱来)直到安装成功。

启动

还是一路 Next

标准模式就可以

下面注意Android Studio 默认会把你的SDK下载放在C盘,到时候你的C盘就炸了,谷歌太坏了,这里你需要选择存放路径,他是用来存放一些模拟器的安卓版本的,会很大,切记切记,然后点击 Next 下一步。我是放在 D:\soft\android_SDK

这里是Android Studio的一些许可协议,你需要接受它才能进行下载,点击Accept,接受协议。然后左边的协议栏中的一项协议的红色星号就消失了,三个协议都需要接受,都接受之后,你会看到Finish按钮会亮起,如下图所示

安装语言插件

在plugins中搜索flutter,dart

选择安装必要组件

Android 模拟器、SDK Platform Tools 和虚拟机加速,选择好之后,点击应用进行安装。

Android版本

 Android 模拟器

安装java

Java Downloads | Oracle

不要安装最新的版本,里面不含。。

自定义系统安装路径

配置系统变量环境

新增JAVA_HOME,值是安装的路径  我的安装路径是 D:\soft\Java

给Path添加如下路径

以上严格配置,基本上就不会有问题了,可以直接新建项目运行了,如果有问题,按照控制台提示逐步解决即可。

运行老项目

一个项目能否正常编译取决于我们的Gradle、SDK以及JDK,不同版本之间是由不同的配置关系的,这对于你来说是否有些复杂呢?不过不用担心,当你可以正常安装Android Studio并且能够正常运行时,你的这三个配置就是可以的,属于默认搭配,你只管写代码就好了。感兴趣和有时间的话,还是要深入学习一下。

Gradle

简单来讲它就是一个构建工具,也就是一些复杂的操作不需要开发者自己去弄,而是通过构建工具去完成的。Gradle有个非常突出的特点,就是它自身就是一门语言(基于Groovy),是一种自动化构建语言,相较于Maven中基于XML的各种繁琐配置,Gradle使用Groovy语言构建文件更加的灵活。但Gradle是一种DSL,是一种领域特定语言,也就是在特定的领域执行特定的任务的一种语言,而我们平常使用的java、python这些都是GPL(通用编程语言),所以Gradle它是不能实现软件中的实际功能。要注意的是,Gradle它并不是独属于Android。

SDK

SDK版本就是当前项目所编译的Android版本

JDK

Your project's Gradle version is incompatible with the Java version that Flutter is using for Gradle

 要找到对应版本的java进行安装

可以参考这篇文章

Flutter环境安装(超详细)_flutter安装教程-CSDN博客

学习资料

1.3 搭建Flutter开发环境 | 《Flutter实战·第二版》

管理flutter版本

项目多了,会有很多不同的版本,可以使用fvm进行管理

使用 FVM 管理多个版本的 Flutter

相关文章:

flutter环境搭建实践

Dart Dart 是一种客户端和服务器端的编程语言,最早由 Google 提出。它被设计用于构建高性能、高度可伸缩和可靠的应用程序。Dart 可以编译成本地代码或者在虚拟机中直接运行。在移动应用开发中,Dart 主要用于开发 Flutter 应用。 Flutter 和 Dart 的关…...

CentOS无法解析部分网站(域名)

我正在安装helm软件,参考官方文档,要求下载 get-helm-3 这个文件。 但是我执行该条命令后,报错 连接被拒绝: curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 # curl: (7) Fai…...

使用HttpRequest工具类调用第三方URL传入普通以及文件参数并转换MultipartFile成File

使用HttpRequest工具类调用第三方URL传入普通以及文件参数 一、依赖及配置二、代码1、模拟第三方服务2、调用服务3、效果实现 一、依赖及配置 <!--工具依赖--><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId&g…...

24计算机考研调剂 | 武汉科技大学

武汉科技大学冶金新技术与功能金属材料研究梯队招收研究生 考研调剂招生信息 学校:武汉科技大学 专业: 工学->治金工程 工学->材料科学与工程 工学->计算机科学与技术 工学->动力工程及工程热物理 工学->机械工程 年级:2024 招生人数:20 招生状态:正在招…...

个人网站制作 Part 11 添加用户权限管理 | Web开发项目

文章目录 &#x1f469;‍&#x1f4bb; 基础Web开发练手项目系列&#xff1a;个人网站制作&#x1f680; 添加用户权限管理&#x1f528;使用Passport.js&#x1f527;步骤 1: 修改Passport本地策略 &#x1f528;修改用户模型&#x1f527;步骤 2: 修改用户模型 &#x1f528…...

百科源码生活资讯百科门户类网站百科知识,生活常识

百科源码生活资讯百科门户类网站百科知识,生活常识 百科源码安装环境 支持php5.6&#xff0c;数据库mysql即可&#xff0c;需要有子目录权限&#xff0c;没有权限的话无法安装 百科源码可以创建百科内容&#xff0c;创建活动内容。 包含用户注册&#xff0c;词条创建&#xff…...

Linux 用户和用户组管理

Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。 用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一…...

【C++ 08】vector 顺序表的常见基本操作

文章目录 前言&#x1f308; Ⅰ vector 类对象的定义1. 定义格式2. vector 对象的构造 &#x1f308; Ⅱ vector 类对象的容量&#x1f308; Ⅲ vector 类对象的访问&#x1f308; Ⅳ vector 类对象的修改&#x1f308; Ⅴ vector 定义二维数组 前言 vector 介绍 vector 是一…...

Day67:WEB攻防-Java安全JNDIRMILDAP五大不安全组件RCE执行不出网

知识点&#xff1a; 1、Java安全-RCE执行-5大类函数调用 2、Java安全-JNDI注入-RMI&LDAP&高版本 3、Java安全-不安全组件-Shiro&FastJson&JackJson&XStream&Log4j Java安全-RCE执行-5大类函数调用 Java中代码执行的类&#xff1a; GroovyRuntimeExecPr…...

GCNv2_SLAM-CPU详细安装教程(ubuntu18.04)

GCNv2_SLAM-CPU详细安装教程-ubuntu18.04 前言一、安装第三方库1.安装Pangolin2.安装OpenCV3.安装Eigen4.安装Pytorch(c) 二、安装以及运行GCNv2_SLAM1.安装编译GCNv2_SLAM2.RGBD模式模式运行演示案例 总结 前言 paper:https://arxiv.org/pdf/1902.11046.pdf githup::https://…...

使用gitee自动备份文件

需求 舍友磁盘前两天gg了&#xff0c;里面的论文没有本地备份&#xff0c;最后费劲巴拉的在坚果云上找到了很早前的版本。我说可以上传到github&#xff0c;建一个私人仓库就行了&#xff0c;安全性应该有保证&#xff0c;毕竟不是啥学术大亨&#xff0c;不会有人偷你论文。但是…...

智慧城市新篇章:数字孪生的力量与未来

随着信息技术的迅猛发展和数字化浪潮的推进&#xff0c;智慧城市作为现代城市发展的新模式&#xff0c;正在逐步改变我们的生活方式和社会结构。在智慧城市的构建中&#xff0c;数字孪生技术以其独特的优势&#xff0c;为城市的规划、管理、服务等方面带来了革命性的变革。本文…...

python讲解(2)

目录 一.变量与赋值 二.字符串类型 引号&#xff1a; 三引号&#xff1a; 字符串拼接 三.len函数 四.注释 注释的方法 一.# 二.文档字符串 注释的要求 群体注释 五.python的报错 六.bool类型 一.变量与赋值 python中的变量是不需要声明的&#xff0c;直接定义即…...

安卓安装Magisk面具以及激活EdXposed

模拟器&#xff1a;雷电模拟器 安卓版本: Android9 文中工具下载链接合集&#xff1a;https://pan.baidu.com/s/1c1X3XFlO2WZhqWx0oE11bA?pwdr08s 前提准备 模拟器需要开启system可写入和root权限 一、安装Magisk 1. 安装magisk 将magisk安装包拖入模拟器 点击&#xff1a…...

C到C++的敲门砖-1

文章目录 关键字命名空间输入和输出缺省参数函数重载 关键字 相较于C语言32个关键字&#xff1a; autodoubleintstructbreakelselongswitchcaseenumregistertypedefcharexternreturnunionconstfloatshortunsignedcontinueforsignedvoiddefaultgotosizeofvolatiledoifwhilesta…...

Qt文件以及文件夹相关类(QDir、QFile、QFileInfo)的使用

关于Qt相关文件读写操作以及文件夹的一些知识&#xff0c;之前也写过一些博客&#xff1a; Qt关于路径的处理&#xff08;绝对路径、相对路径、路径拼接、工作目录、运行目录&#xff09;_qt 相对路径-CSDN博客 C/Qt 读写文件_qt c 读取文本文件-CSDN博客 C/Qt读写ini文件_…...

ChatGPT编程实现简易聊天工具

ChatGPT编程实现简易聊天工具 今天借助[[小蜜蜂]][https://zglg.work]网站的ChatGPT练习socket编程&#xff0c;实现一个简易聊天工具软件。 环境&#xff1a;Pycharm 2021 系统&#xff1a;Mac OS 向ChatGPT输入如下内容&#xff1a; ChatGPT收到后&#xff0c;根据返回结…...

C#-用于Excel处理的程序集

在.NET开发中&#xff0c;处理Excel文件是一项常见的任务&#xff0c;而有一些优秀的Excel处理包可以帮助开发人员轻松地进行Excel文件的读写、操作和生成。本文介绍了NPOI、EPPlus和Spire.XLS这三个常用的.NET Excel处理包&#xff0c;分别详细介绍了它们的特点、示例代码以及…...

HTTPS基础

目录 HTTPS简介 HTTP与HTTPS的区别 CA证书 案例 服务器生成私钥与证书 查看证书和私钥存放路径 Cockpit(图像化服务管理工具) HTTPS简介 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容&#xff0c;不提供任何方式的数据加密&…...

【Flink SQL】Flink SQL 基础概念(四):SQL 的时间属性

《Flink SQL 基础概念》系列&#xff0c;共包含以下 5 篇文章&#xff1a; Flink SQL 基础概念&#xff08;一&#xff09;&#xff1a;SQL & Table 运行环境、基本概念及常用 APIFlink SQL 基础概念&#xff08;二&#xff09;&#xff1a;数据类型Flink SQL 基础概念&am…...

COMSOL 6.1 激光粉末床熔融气孔缺陷演化仿真:开启微观世界的探索之旅

COMSOL 6.1 激光粉末床熔融气孔缺陷演化仿真案例模型 本案例选用层流和流体传热模块&#xff0c;采用水平集法&#xff0c;考虑材料的热物性以及激光加工过程中的马兰戈尼效应、熔融金属表面张力、反冲压力、相变潜热、热对流和热辐射&#xff0c;建立含气孔缺陷的二维数值仿真…...

别再只加Mask了!手把手教你用FlashAttention实现真正的Sliding Window Attention(附代码)

突破传统误区&#xff1a;用FlashAttention实现高效滑动窗口注意力的实战指南 在Transformer模型优化领域&#xff0c;许多开发者对滑动窗口注意力(Sliding Window Attention, SWA)存在一个普遍误解——认为只需在注意力矩阵上添加滑动窗口掩码就能实现线性复杂度。这种错误认…...

Zemax光学设计(三)——从艾里斑到系统分辨率:衍射极限的实战解析

1. 艾里斑&#xff1a;光学的终极像素 当你用手机拍夜景时&#xff0c;为什么远处的路灯总变成模糊的光团&#xff1f;这背后隐藏着光学系统的基本限制——艾里斑。我在设计微型内窥镜镜头时&#xff0c;曾花了三周时间优化像差&#xff0c;最终却发现图像清晰度卡在一个无法突…...

FPGA网络加速入门:拆解Xilinx 7系列GTP与1G/2.5G Ethernet PCS/PMA IP核,搞懂SGMII接口那些事

FPGA网络加速实战&#xff1a;从Xilinx GTP架构到SGMII接口的深度解析 在FPGA高速通信领域&#xff0c;以太网接口设计一直是工程师面临的核心挑战之一。当我们需要在Xilinx 7系列FPGA上实现1G/2.5G以太网功能时&#xff0c;GTP收发器与PCS/PMA IP核的配置往往成为项目成败的关…...

投入式水位监测站 地下水位监测设备

地下水位自动监测设备&#xff0c;核心亮点在于“本安防爆设计”&#xff0c;严格遵循本安型防爆标准&#xff0c;从电路设计、材质选用、结构防护三方面杜绝点火源&#xff0c;确保在井下易燃易爆气体环境中安全运行&#xff0c;彻底消除设备运行带来的安全隐患&#xff0c;真…...

快捷键冲突终结者:Hotkey Detective全方位排障指南

快捷键冲突终结者&#xff1a;Hotkey Detective全方位排障指南 【免费下载链接】hotkey-detective A small program for investigating stolen hotkeys under Windows 8 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 问题诊断&#xff1a;你的快捷键为…...

Mac用户的移动Win10工坊:从WTG配置到驱动、激活、文件共享的完整避坑指南

Mac用户的移动Win10工坊&#xff1a;从WTG配置到驱动、激活、文件共享的完整避坑指南 当Mac用户需要运行Windows应用时&#xff0c;双系统方案往往是最佳选择。而通过Windows To Go&#xff08;WTG&#xff09;技术将Win10安装在移动硬盘上&#xff0c;不仅保留了Mac原生系统的…...

5个步骤掌握MelonLoader:让Unity游戏模组开发变得轻松有趣

5个步骤掌握MelonLoader&#xff1a;让Unity游戏模组开发变得轻松有趣 【免费下载链接】MelonLoader The Worlds First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono 项目地址: https://gitcode.com/gh_mirrors/me/MelonLoader 你是否曾…...

别再手算LLC参数了!用Mathcad Prime 8.0自动生成增益曲线,附我验证过的产品级模板

告别手工计算&#xff1a;用Mathcad Prime 8.0打造智能LLC设计工作流 深夜的办公室里&#xff0c;电源工程师小王盯着屏幕上密密麻麻的公式叹了口气——这已经是本周第三次因为手工计算LLC谐振参数出错导致样机测试失败了。在中小型电源企业&#xff0c;像小王这样的场景每天都…...

从零构建树莓派人脸识别门禁:硬件选型、环境部署与实战避坑

1. 硬件选型与采购清单 第一次玩树莓派人脸识别项目时&#xff0c;我在淘宝上花了整整三天对比各种硬件参数。当时最纠结的就是摄像头模块——普通USB摄像头才30块钱&#xff0c;而官方推荐的Raspberry Pi Camera Module V2要200多。后来实测发现&#xff0c;这差价真不能省。 …...