1.安装lutter
1.1 安装flutter SDK
flutter 官网https://flutter.dev/https://flutter.dev/
点击右上角get started
笔者为Mac系统,以Mac为例:
1.2 解压压缩包
Mac可以选择放在
放在这里的好处是使用这台Mac机子的所有用户都可以使用flutter,但是由于是系统文件夹,万一更新时或者其它情况,获取不到权限,会操作失败。
也可以放在自己用户的目录下,笔者选择放在了自己用户的目录下。放在自己家目录下的问题就是如果是多人开发,那么可能flutter的路径不一样,导致会有一些麻烦。
1.3 配置环境
国内的小伙伴们,不仅仅要在配置文件内加入flutter的环境变量,还要添加flutter的镜像服务器网址。
如果你的shell是bash,就编辑 ~/.bash_profile 该文件。
如果你的shell是zsh,就编辑 ~/.zshrc
该文件。
我是zsh,我贴一下我的配置(电脑里没有Java环境的记得自己去配一下):
# Flutter镜像配置
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
# Flutter 配置
export FLUTTER=/Users/xutw/flutter/bin
export PATH=$PATH:$FLUTTER
# Java 配置
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-17.0.1.jdk/Contents/Home"
export JAVA_HOME
export CLASS_PATH="$JAVA_HOME/lib"
export PATH="$PATH:$JAVA_HOME/bin"
输入命令 source ~/.zshrc 加载配置文件,使其生效。
1.4 检测是否配置成功
输入命令 flutter doctor
打❌表示此项没有配置好。
2.安装Android Studio
安装。
2.1 下载SDK出现这个问题
修改Proxy跳过下载
进入之后再勾选 No proxy下载Android SDK,记得选择路径,不然下面的勾选路径是灰色的。
2.2 安装几个SDK Tools
2.3 安装flutter插件
安装完成后重启。
出现
则成功!
3.结尾
可以再次使用 flutter doctor 检查自己的环境配置有无问题
如果出现问题,后面会有解决问题的灰色提示。
使用命令 flutter doctor --android-licenses 后面一直同意,就完事了。
4.补充
2021.11.10 如果你在安卓上部署开发的app,运行到这里卡住了
这是由于Gradle到仓库在国外,国内访问不到,所以也要改成阿里云到镜像网址。
maven{url'https://maven.aliyun.com/repository/google'}
maven{url'https://maven.aliyun.com/repository/jcenter'}
maven{url'http://maven.aliyun.com/nexus/content/groups/public'}
flutter/packages/flutter_tools/gradle/flutter.gradle
你自己的当前项目也要改
buildscript {
ext.kotlin_version = '1.3.50'
repositories {
// google()
// mavenCentral()
maven{url'https://maven.aliyun.com/repository/google'}
maven{url'https://maven.aliyun.com/repository/jcenter'}
maven{url'http://maven.aliyun.com/nexus/content/groups/public'}
}
dependencies {
classpath 'com.android.tools.build:gradle:4.1.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
// google()
// mavenCentral()
maven{url'https://maven.aliyun.com/repository/google'}
maven{url'https://maven.aliyun.com/repository/jcenter'}
maven{url'http://maven.aliyun.com/nexus/content/groups/public'}
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.evaluationDependsOn(':app')
}
task clean(type: Delete) {
delete rootProject.buildDir
}