(一)环境配置及问题
环境变量配置
FVM_HOME:
这个环境变量通常用于Flutter版本管理器(Flutter Version Management,简称FVM)。FVM是一个帮助开发者管理和切换不同Flutter版本的工具。设置FVM_HOME可以指定FVM存储和管理Flutter SDK版本的位置。
FVM global 3.10.5 //通过这个指令可以使用flutter3.10.5版本,这时会在FVM_HOME目录下生成default目录 //可以在path中添加下面环境变量,配置全局的flutter和dart %FVM_HOME%\default\bin %FVM_HOME%\default\bin\cache\dart-sdk\binGRADLE_HOME:
指向Gradle的安装目录。Gradle是一个自动化构建工具,广泛用于Java、Android和其他多种语言的项目。通过设置GRADLE_HOME,系统可以知道从哪里运行Gradle命令。//设置path变量 %GRADLE_HOME%\binGRADLE_USER_HOME:
指定存储Gradle配置、依赖等信息的位置。默认情况下,这通常是用户目录下的.gradle文件夹。但可以通过设置这个环境变量来改变这个位置。JAVA_HOME:
指向JDK(Java开发工具包)的安装位置。许多Java应用程序和开发工具(如Android Studio和Gradle)都需要通过JAVA_HOME环境变量来定位JDK。//设置path变量 %JAVA_HOME%\binANDROID_HOME ANDROID_HOME 是一个较早使用的环境变量,主要用来指定 Android SDK 的安装位置。开发工具和脚本(如 Android Studio, Gradle, adb 等)使用这个变量来找到 SDK 的各个组件。
ANDROID_SDK_HOME:
指定Android SDK的安装位置。Android SDK包含了开发Android应用所需的工具和API。设置这个环境变量可以帮助开发工具和IDEs(如Android Studio)定位SDK。M2_HOME:
指向Maven的安装目录。Maven是Java项目的另一种流行的构建工具。通过设置M2_HOME,系统可以知道从哪里运行Maven命令。//设置path变量 %M2_HOME%\binPUB_CACHE:
用于Dart和Flutter开发。PUB_CACHE指定了Pub包管理器存储其包缓存的位置。如果没有设置,它默认存储在用户目录下。PUB_HOSTED_URL:
指向Dart包管理器Pub使用的服务器URL。这对于在特定的源(比如公司内部的Pub服务器)而非公共Pub仓库中获取包特别有用。//设置值 https://pub.flutter-io.cnFLUTTER_STORAGE_BASE_URL:
用于Flutter开发。这个环境变量允许你指定Flutter工具和依赖的下载源的基本URL。这在访问官方源受限或速度缓慢时特别有用,可以设置为更接近或更快的镜像源。//设置值 https://storage.flutter-io.cn
配置flutter 使用的androidSDK目录
flutter config --android-sdk ${ANDROID_HOME的目录}
gradle 配置
在GRADLE_USER_HOME环境变量的目录下添加init.gradle文件,内容如下,使用镜像源提升maven的下载速度
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构建
打开 android/gradle/wrapper/gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
//修改为下面镜像,只保留gradle-7.5-all.zip
distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-7.5-all.zip
当然也可以在android/build.gradle添加项目的repositories镜像提升maven的下载速度,如果GRADLE_USER_HOME配置了可以不配置该选项
buildscript {
ext.kotlin_version = '1.7.10'
repositories {
maven { setUrl( "https://jitpack.io" )}
maven { setUrl( "https://maven.aliyun.com/repository/public" )}
maven { setUrl( "https://maven.aliyun.com/repository/jcenter" )}
maven { setUrl( "https://maven.aliyun.com/repository/google" )}
}
dependencies {
classpath 'com.android.tools.build:gradle:7.3.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
在android目录下运行,如果没问题,便可以在真机上进行编译运行
./gradlew assembleDebug --info
//命令是为了构建一个Android项目的Debug版本,并且输出详细的信息(info级别的日志)。
//这个命令在Android开发中相当常用,特别是当你需要更详细的构建日志来诊断问题时
使用全局gradle构建
进入到带build.gradle的根目录(一般在android目录下)
gradle assembleDebug --info
//命令是为了构建一个Android项目的Debug版本,并且输出详细的信息(info级别的日志)。
//这个命令在Android开发中相当常用,特别是当你需要更详细的构建日志来诊断问题时
问题
- 修改了系统的版本之后,特别是fvm切换了flutter版本,一定要重新启动Android Studio,否则可能使用的还是旧的flutter,或者在命令行使用
flutter run -t lib/main.dart
//命令行如果可以正常,那就是Android Studio没有更新版本
