Flutter环境搭建踩坑集锦

news2024/11/17 23:37:47

Flutter

  • 背景
  • 准备工作
  • 先检查一下自己的电脑,看一下是不是满足配置要求
  • 下载安装配置环境
    • 下载安装JDK
    • 下载安装Android studio
    • 下载Flutter
    • flutter doctor故障
      • Android license status unknown
      • Network resources 故障
    • 后记

背景

发现一个不错的框架Flutter,听说一套代码就搞定Android和ios,感觉很牛逼,就来试试看,搭环境却不是那么容易,主要还是自己没搞过移动开发吧,踩了一些坑,然后记录一下,相信我遇到的问题别人也会遇到吧,而且不知道多久以后可能还会用上是不是,我可不想踩过的坑再来查一遍资料,自己整理一份吧。

准备工作

第一步当然是找一下Flutter官方文档,直接点击链接到window的安装指导,其他平台可以顺路自己找一下。

先检查一下自己的电脑,看一下是不是满足配置要求

这里按照官方文档基本没有什么问题,多数人肯定是满足要求的了,但是有一个坑让我换了台电脑搞,这里没有提示到的,那就是这个玩意居然多A卡的电脑支持有问题,主要影响是在最后生成虚拟机调试的时候,会有一些型号的手机无法模拟,也就是你有一个残缺的devicemanager,what**?搞到这里跟我说这个,虽然开发不受影响,而且可能还有其他解决方案可以解决这个问题,但是byebye,换个卡能解决的事情,而且又不是我主业,我就不研究了,这里留一下,给有缘人想办法解决吧,如果你的电脑是A卡的显卡,那么你可能就先不要尝试了,先看看有没有办法解决我说的手机模拟器的问题吧

下载安装配置环境

这里我们需要下载Flutter,Android SDK和JDK配置环境,这个下载没有先后顺序,自行操作.个人推荐的顺序是JDK,Android,Flutter

下载安装JDK

我个人是比较推荐先安装jdk的,不为别的,这套东西本身是有依赖关系的,按照依赖关系从底层建设是我的习惯。
JDK版本很多首页一般只有几个版本,也不是最新的,应该是使用最多的吧,我这里就贴一下下载列表的,想要哪个版本自己取JDK下载列表
然后就是常规操作,把Java bin加入环境变量,自己新建一个
JAVA_HOME的环境变量,值就是C:\Program Files\Java\jdk-1.8,我的是18版本的,所以是这个,自己根据安装路径和版本自己修改就可以了。

下载安装Android studio

直接去官网下载。Android官网
安装过程我就不细贴了,很多地方都有,这里写几点注意,第一遇到勾选virtual device的时候要勾选,后面下载要选择安装 Android SDK, Android SDK Platform-Tools 以及 Android SDK Build-Tools,至于版本,也是按自己的需要选择,然后有个坑是Android SDK Command-line tools没有安装,Flutter官网没有说要安装这个,而且默认好像是不安装,这个时候就需要自己手动安装一下,而且安装版本也是有讲究的,如果版本不对也会导致后面检测的时候运行失败,我就是安装的8.0的版本的

下载Flutter

直接点击官方教程上面的下载链接,一般是最新版本,由于Flutter比较新,更新比较快,有些时候可能会出现前后版本兼容没那么好的问题,所有下载之前最好还是留意一些你需要的版本,如果你是新手来学习的,就是直接下载最新版本就好了
安装也直接按官方操作皆可以了,注意事项官方文档也写的很清楚。其中提到Dart SDK是可以单独下载安装的,我自己没有单独下载,也不建议谁单独下载,毕竟都可以一步到位了,估计这里是留给老用户的。
如果你是先安装的Flutter再安装JDK和Android,安装完成之后不要急着运行Flutter doctor,虽然这个命令多运行几次也没事,但是明知环境没有配置好还是先不要运行的好,这个命令跑一遍还是要时间的,然后报一些莫名其妙的问题你不是脑壳疼?

flutter doctor故障

Android license status unknown

这个故障有很多解决方案,也就是说有很多不同的问题。这里先贴我的解决方法,然后补充别人遇到的问题和解决方案。
我的机器使用flutter doctor --android-licenses之和出现的结果是Android SDK tools没有,下载这个tools需要把Hide obsolete Packages勾选掉
在这里插入图片描述
然后flutter doctor --android-licenses,一直选择y就可以了,其他的问题大概也是根据flutter doctor --android-licenses这个指令的提示去解决的
别人的方案:
在这里插入图片描述

Network resources 故障

也就是flutter doctor最后一项出故障了
一般有两个故障,一个是git的,一个是marven的
我个人经验来看,一般只有一个,那就是marven的更新,因为是使用google的资源所以国内的大部分都报这个,换一下资源地址就好了

  • 1打开flutter根目录
  • 2打开文件 packages/flutter_tools/lib/src/http_host_validator.dart
  • 3修改其中 kMaven(修改为http://maven.aliyun.com/nexus/content/groups/public/)
  • 4删除 bin/cache(这里如果不放心可以备份,失败了重新拷回来没有问题)
  • 5重新执行 flutter doctor
    这个过程需要下载marven资源会需要一点时间,基本网速快也花不了多久
    另一个问题是git故障,这个别人是咋回事我不知道,我这里是因为我自己科学上网导致的,科学上网关了就好了,如果你不是这个原因,那可以试试下面的方法。
    git config --global http.proxy http://127.0.0.1:7890
    git config --global https.proxy http://127.0.0.1:7890
    这个我不太建议使用,即使是你先报了这个,最好也先试试上面改marven的方法,如果哪个改了还有git的问题,再试不迟,当然,你改了也没事,毕竟设置gitconfig的代理这个,并不会造成太大的影响,加上可以随时改。

后记

环境踩坑也就到这里了,欢迎评论区留言分享自己的坑点,大家共勉。最后flutter官网不仅用于安装教程,后面很多可以学习的东西也别浪费了,入门学习相当不错,白白了各位。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/814128.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

web题型

0X01 命令执行 漏洞原理 没有对用户输入的内容进行一定过滤直接传给shell_exec、system一类函数执行 看一个具体例子 cmd1|cmd2:无论cmd1是否执行成功,cmd2将被执行 cmd1;cmd2:无论cmd1是否执行成功,cmd2将被执行 cmd1&cmd2:无论cmd1是否执行成…

【C++继承】

目录 一、继承的概念及定义1.1继承的概念1.2继承的定义1.2.1定义格式1.2.2继承方式与访问限定符的组合 二、基类和派生类对象赋值转换三、继承中的作用域四、派生类的默认成员函数五、继承与友元六、继承与静态成员七、复杂的菱形继承及菱形虚拟继承八、虚拟继承的原理 一、继承…

(AcWing)满足条件的01序列

给定 n 个 0 和 n 个 1,它们将按照某种顺序排成长度为 2n 的序列,求它们能排列成的所有序列中,能够满足任意前缀序列中 0 的个数都不少于 1 的个数的序列有多少个。 输出的答案对 10^97 取模。 输入格式 共一行,包含整数 n。 …

Kotlin基础(十):函数进阶

前言 本文主要讲解kotlin函数,之前系列文章中提到过函数,本文是kotlin函数的进阶内容。 Kotlin文章列表 Kotlin文章列表: 点击此处跳转查看 目录 1.1 函数基本用法 Kotlin 是一种现代的静态类型编程语言,它在函数的定义和使用上有一些特点…

软考A计划-系统集成项目管理工程师-项目干系人管理-上

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 👉关于作者 专注于Android/Unity和各种游…

简单易用的批量重命名工具,C++语言编写

它具备出色的文件重命名功能,能够让用户轻松对多个文件进行批量重命名操作。不论是添加前缀、后缀,还是替换文件名称中的特定字符,都能轻松完成。此外,该软件体积小巧、操作简单便捷,使用起来的效果出奇好。 MiniRenamer特色功能: 正则命名:支持正则命名规则,并可自定义…

【机器学习】Classification using Logistic Regression

Classification using Logistic Regression 1. 分类问题2. 线性回归方法3. 逻辑函数(sigmod)4.逻辑回归5. 决策边界5.1 数据集5.2 数据绘图5.3 逻辑回归与决策边界的刷新5.4 绘制决策边界 导入所需的库 import numpy as np %matplotlib widget import m…

【Linux】进程的认识

查看进程指令proc/ps/top 注意哦, 我们经常使用的指令, 像ls, touch…这些指令在启动之后本质上也是进程 proc 是内存文件系统, 存放着当前系统的实时进程信息. 每一个进程在系统中, 都会存在一个唯一的标识符(pid -> process id), 就如同学生在学校里有一个专门的学号一样…

Mac笔记本安装maven

Mac笔记本安装maven 一、通过brew安装maven 如果你的mac笔记本安装了homebrew可以使用如下命令安装 brew install maven安装完成后可以使用命令brew list maven来查看maven的安装位置 $ brew list maven /usr/local/Cellar/maven/3.6.3_1/bin/mvn /usr/local/Cellar/mave…

从零开始学Docker(三):DockerFile镜像定制

宿主机环境:RockyLinux 9 前言,定制docker镜像的方式有两种: 手动修改容器内容,然后docker commit提交容器为新的镜像通过在dockerfile中定义一系列的命令和参数构成的脚本,然后这些命令应用于基础镜像,依…

leetcode 面试题 0106.字符串压缩

⭐️ 题目描述 🌟 leetcode链接:面试题 0106.字符串压缩 思路: 开辟一个新的空间(空间要大一点,因为可能压缩后的字符串比原字符串大),然后遍历原字符串统计当前字符的个数,再写入到…

使用vmd渲染并保存指定分辨率的图片

准备TCL脚本文件 # 设置渲染分辨率为1920x1080,600dpi render TachyonInternal out.tga width 1920 height 1080 dpi 600# 启用抗锯齿选项 display antialias on运行TCL 输入: source render.tcl使用Photoshop打开输出的out.tga文件并保存常用图片格式

【蓝桥杯备考资料】如何进入国赛?

目录 写在前面注意事项数组、字符串处理BigInteger日期问题DFS 2013年真题Java B组世纪末的星期马虎的算式振兴中华黄金连分数有理数类(填空题)三部排序(填空题)错误票据幸运数字带分数连号区间数 2014年真题蓝桥杯Java B组03猜字…

RK3568平台开发系列讲解(应用篇)输入设备应用编程

🚀返回专栏总目录 文章目录 一、输入设备介绍二、input 子系统三、读取输入设备四、按键应用编程沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇我们将讲解输入设备应用编程。 一、输入设备介绍 输入设备是指可以接收用户输入的设备,例如键盘、鼠标、触摸屏等…

41. linux通过yum安装postgresql

文章目录 1.下载安装包2.关闭内置PostgreSQL模块:3.安装postgresql服务:4.初始化postgresql数据库:5.设置开机自启动:6.启动postgresql数据库7.查看postgresql进程8.通过netstat命令或者lsof 监听默认端口54329.使用find命令查找了一下postgresql.conf的配置位置10.修改postgre…

保姆级秋招教程之简历篇

大家好,我是千寻哥,个人简历在程序员求职过程中扮演着至关重要的角色。 今天我将详细给大家介绍一下写简历的必备要素和布局,同时强调应避免的“坑”! 希望能通过这些技巧,能帮助程序员打造一份出色的简历,…

Python - print

文章目录 1. end‘’2. 未完待续~ 1. end‘’ 如果没有end‘’,每次print语句都会自动换行,而有了这个语句,数据就不会自动换行,而是在输出的数据后面加上空格(空格数取决于引号里面的空格数)示例&#xf…

Vulnhub: hacksudo: search靶机

kali:192.168.111.111 靶机:192.168.111.170 信息收集 端口扫描 nmap -A -sC -v -sV -T5 -p- --scripthttp-enum 192.168.111.170 80端口目录爆破 feroxbuster -k -d 1 --url http://192.168.111.170 -w /opt/zidian/SecLists-2022.2/Discovery/Web…

计网 第三章错题整理 (3.4以后)

3.4 ③ 发送窗口不能大于接收窗口 否则窗口大小大于序号范围一般的时候 超时重传接收方没法辨别是新帧还是旧帧 本题有歧义 因为编号个数可以自定义的话,信道利用率都可达到百分之百 数据帧长度为128B的话 发送同样一个比特序列,需要更多的比特数 所以要…

7、单元测试--测试RestFul 接口

单元测试–测试RestFul 接口 – 测试用例类使用SpringBootTest(webEnvironment WebEnvironment.RANDOM_PORT)修饰。 – 测试用例类会接收容器依赖注入TestRestTemplate这个实例变量。 – 测试方法可通过TestRestTemplate来调用RESTful接口的方法。 测试用例应该定义在和被测…