新装电脑Flutter环境部署坑汇总(持续更新)

2024-04-26 07:36

本文主要是介绍新装电脑Flutter环境部署坑汇总(持续更新),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.本地安装,安装fvm的坑

本人电脑使用windows ,安装fvm则一般使用choco安装,那么首先需要安装choco,打开powershell/或者cmd运行以下命令:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; 
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) 

choco安装成功后 通过choco install fvm可安装fvm

fvm安装成功后,通过命令行中使用fvm命令对flutter 版本进行控制

fvm安装后需要对flutter 进行管理 使用flutter global xxxx 指定全局的flutter版本,运行这个命令后,会自动在fvm/versions统计生成一个default目录,该目录可以用来配置默认的flutter版本,这样才能全局使用flutter 命令操作,否则会提示 flutter 不是一个命令之类的提示

2.fvm管理flutter版本 

进入对应项目目录中,运行fvm use xxx切换flutter版本 ,但这时遇到另一个坑(https://storage.flutter-io.cn/ 镜像无法使用的问题 ),该坑最好在配置PUB_HOSTED_URL和FLUTTER_STORAGE_BASE_URL两个配置时将对应地址改成国内其他镜像环境,如(下面的几种镜像任选其一即可 ):

//清华镜像FLUTTER_STORAGE_BASE_URL="https://mirrors.tuna.tsinghua.edu.cn/flutter" 
PUB_HOSTED_URL="https://mirrors.tuna.tsinghua.edu.cn/dart-pub"//上交镜像PUB_HOSTED_URL=https://dart-pub.mirrors.sjtug.sjtu.edu.cn
FLUTTER_STORAGE_BASE_URL=https://mirrors.sjtug.sjtu.edu.cn//CNNIC镜像
PUB_HOSTED_URL=http://mirrors.cnnic.cn/dart-pub
FLUTTER_STORAGE_BASE_URL=http://mirrors.cnnic.cn/flutter//腾讯镜像
PUB_HOSTED_URL=https://mirrors.cloud.tencent.com/dart-pub
FLUTTER_STORAGE_BASE_URL=https://mirrors.cloud.tencent.com/flutter

这里面还有个坑问题,多版本管理使用fvm global xxx生成默认的default目录之后,在vscode命令行中会出现一个问题就是,cmd命令行和vscode命令行用的flutter版本不是同一个,这时候可以修改settings.json文件,将flutterSdkPath配置改成如下方式

{"dart.flutterSdkPath": "G:\\fvm\\default"
}

 注意:因为本人是使用的vscode编辑器开发的flutter,vscode的命令行可能没有android studio命令行那么强大,所以像SDK版本切换后仍然会有这样的问题,这种情况就得仔细分析其他的可能原因了,我在个人公司电脑安装时就是这样的情况,因为fluttersdkPath的问题,但android studio中只要修改了SDK版本版本是会自动切过去的

如果这时想使用vscode自带的F5启动项目,可能会碰到这样的问题:

其实在vscode终端和命令行中都能访问到git命令,这个跟git完全没有关系,解决方法反而是环境变量里面中没有C:\Windows\System32;这个路径(这里完全懵逼) :

解决方法则是环境变量的path加上这个路劲,然后重新f5启动成功

3.Gradle使用的坑

对于flutter项目编译的android项目而言,gradle的安装和配置也是比较坑的地方,gradle分发地址配置一般在gradle-wrapper.properties配置文件中,一般指定如下:

distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip

 也可以指定本地文件,本地文件格式一般是这样

distributionUrl=file:///D:/gradle7.4/gradle-7.4-all.zip

一般这个指向的是本地.gradle文件下的gradle-xxx-all.zip包 

另外通过gradle构建android项目时网络会比较慢,如果有梯子最好借助梯子安装依赖,如果没有梯子最好配置下镜像环境,在gradle版本目录中如:

G:\Gradle\repo\wrapper\dists\gradle-7.5-all\6qsw290k5lz422uaf8jf6m7co\gradle-7.5\init.d

创建init.gradle文件,文件中可以配置gradle的镜像

allprojects {repositories {mavenLocal()maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" }maven { name "Bstek" ; url "https://nexus.bsdn.org/content/groups/public/" }mavenCentral()}buildscript { repositories { maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' }maven { name "Bstek" ; url 'https://nexus.bsdn.org/content/groups/public/' }maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }}}
}

注意:这里又有个坑的地方,gradle构建项目时都是使用https,如果里面有协议名为http的最好改成https的,或者使用如下配置:

maven { allowInsecureProtocol = trueurl 'http://xxx.xxx.xxx/repository/public/' }

4.flutter 依赖版本问题 (巨坑)

编译时报错得手动修改依赖的版本号,

对于依赖所依赖的依赖,可能会找不到依赖的yaml配置的位置(这种情况只能认栽了),我本地跑的时候是这个文件 (主要是因为之前项目是3.7.1升级到3.7.8)

C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.dev\community_charts_flutter-1.0.2\lib\src\behaviors\legend\legend_layout.dart

上图的这些地方未作空安全的处理,导致编译不过去,无奈手动修改代码才能继续编译,后面继续又报异常

这种异常是因为kotlin_version版本较低导致,原来为1.6.x更新到1.7.x即可

5.模拟器的坑

最后模拟器一般是基于x86_64的配置的,所以最好在android/app/build.gradle中配置,需要这样配置的一般情况都是libflutter.so文件无法找到(特别是之前没安装过flutter项目时特别容易出现)

debug {ndk {abiFilters "x86_64"}}}

真机调试或者其他设备调试可以根据下图架构进行选择

这篇关于新装电脑Flutter环境部署坑汇总(持续更新)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/936969

相关文章

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

录音功能在哪里? 电脑手机等设备打开录音功能的技巧

《录音功能在哪里?电脑手机等设备打开录音功能的技巧》很多时候我们需要使用录音功能,电脑和手机这些常用设备怎么使用录音功能呢?下面我们就来看看详细的教程... 我们在会议讨论、采访记录、课堂学习、灵感创作、法律取证、重要对话时,都可能有录音需求,便于留存关键信息。下面分享一下如何在电脑端和手机端上找到录音功能

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同