上篇 ~ 初始化一个新的 Flutter 项目,请按照以下步骤操作
1. 确认 Flutter SDK 是否已正确安装
如果你尚未安装 Flutter,请先下载并解压 SDK:
访问 Flutter 官网 下载 Mac 版本的 SDK 解压到指定目录,例如:
unzip ~/Downloads/flutter_macos_arm64.zip -d ~/
2. 配置环境变量
打开 zsh 配置文件 :
nano ~/.zshrc
添加 Flutter 路径 :在文件末尾添加以下内容(假设 Flutter 解压到 ~/flutter):
export PATH="$PATH:~/flutter/bin"
保存并退出 :按 Ctrl + X,然后按 Y 确认保存。
3. 立即生效配置
source ~/.zshrc
4. 验证是否生效
flutter --version
如果输出类似以下内容,说明配置成功:
Flutter 3.x.x • channel stable • ...
5. 注意事项
权限问题 :确保 Flutter 目录有执行权限:
chmod +x ~/flutter/bin/flutter
运行 flutter doctor 检查依赖项(如 Android Studio/Xcode):
flutter doctor
根据提示安装缺失的依赖。
确保 flutter 文件有执行权限:
chmod +x ~/flutter/bin/flutter
⭐️在中国网络环境下使用 Flutter
参考链接,配置你的机器使用国内镜像
下篇 ~ 在不安装Android Studio的情况下,如何满足Flutter运行所需的Android SDK组件
1. 下载 Android SDK
访问 Android SDK 独立工具页面 ,下载 Command line tools only (例如 commandlinetools-mac-xxx_latest.zip)。
确保解压后的 cmdline-tools 的目录结构正确。正确的结构应为:

如果解压后的目录缺少层级,手动调整:
假设你解压后的 cmdline-tools 在 ~/Downloads
mkdir -p ANDROID_HOME/cmdline-tools/latest mv \~/Downloads/cmdline-tools/\* ANDROID_HOME/cmdline-tools/latest/
2. 安装 SDK 组件
通过终端使用 sdkmanager 安装必要组件:
进入 sdkmanager 所在目录
cd $ANDROID_HOME/cmdline-tools/latest/bin
安装最新平台工具和构建工具,使用 --sdk_root 指定根目录
./sdkmanager --sdk_root=$ANDROID_HOME "platform-tools" "platforms;android-34" "build-tools;34.0.0"
(将 android-34 和 34.0.0 替换为你需要的版本)
如果权限不足,赋予 sdkmanager 可执行权限:
chmod +x $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager
3. 接受 SDK 许可证
./sdkmanager --licenses
按提示输入 y 接受所有协议。
4. 配置环境变量
将 Android SDK 路径添加到 shell 配置文件(如 ~/.zshrc 或 ~/.bash_profile):
echo 'export ANDROID_HOME="$HOME/Library/Android/sdk"' >> ~/.zshrc
echo 'export PATH="PATH:ANDROID_HOME/platform-tools"' >> ~/.zshrc
echo 'export PATH="PATH:ANDROID_HOME/cmdline-tools/bin"' >> ~/.zshrc
source ~/.zshrc
5. 连接安卓手机
在手机上启用 开发者选项 和 USB 调试 :
进入 设置 > 关于手机 ,连续点击 版本号 7 次。
返回设置,进入 系统 > 开发者选项 ,启用 USB 调试 。
通过 USB 连接手机到 Mac,终端输入 flutter devices 确认设备被识别。
6. 运行 Flutter 应用
创建项目
使用以下命令初始化项目(将 your_project_name 替换为你的项目名):
flutter create your_project_name
项目名建议使用小写字母和下划线(如 my_flutter_app)。 默认会生成一个包含示例代码的项目。
进入项目目录
cd your_project_name
运行应用
连接设备(真机或模拟器)后执行:
flutter run
如果手机被正确识别,应用会自动编译并安装到设备。首次运行会自动下载依赖,可能需要等待几分钟。
运行错误解决
(1) 无法安装指定版本的NDK
使用命令行工具手动安装指定版本的 NDK:
查看可用的 NDK 版本
sdkmanager --list | grep "ndk"
安装指定版本 NDK(示例为 26.3.11579264)
sdkmanager --install "ndk;26.3.11579264"
如果安装失败,可能需要先接受许可证:
yes | sdkmanager --licenses
安装完成后,清理并重新构建
flutter clean
flutter pub get
flutter run
(2) Error: Could not determine SDK root.
sdkmanager 依赖 Java 8 或更高版本,安装 Java 环境
(3) 在Flutter真机调试时卡在Running Gradle task 'assembleDebug'...
这是因为Gradle依赖下载缓慢或失败。将其替换为国内镜像,在项目android/build.gradle中修改仓库地址,同时,在 android/build.gradle.kts 中指定 Kotlin 版本(与 Flutter 兼容):
rust
buildscript {
ext.kotlin_version = "1.9.23" // 与 Flutter 适配的版本
repositories {
// 将google()和mavenCentral()替换为:
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/central' }
}
}
allprojects {
repositories {
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/central' }
}
}
在 android/gradle/wrapper/gradle-wrapper.properties 中,使用国内镜像加速下载:
distributionUrl=mirrors.aliyun.com/github/rele...
如果项目使用的是 build.gradle.kts (Kotlin DSL),在 android/build.gradle.kts 中,将仓库地址替换为国内镜像:
buildscript
val kotlinVersion: String by extra("1.9.23") // 使用 extra 定义变量
repositories {
// 注释掉默认仓库
// google()
// mavenCentral()
// 添加阿里云镜像
maven { url = uri("https://maven.aliyun.com/repository/google") }
maven { url = uri("https://maven.aliyun.com/repository/central") }
}
dependencies {
classpath("com.android.tools.build:gradle:8.0.0") // 确保版本与 Flutter 兼容
}
}
allprojects {
repositories {
// 注释掉默认仓库
// google()
// mavenCentral()
// 添加阿里云镜像
maven { url = uri("https://maven.aliyun.com/repository/google") }
maven { url = uri("https://maven.aliyun.com/repository/central") }
}
}
清理项目并重新构建
清理构建缓存:
flutter clean
删除android/.gradle、android/app/build等目录:
rm -rf android/.gradle
rm -rf android/app/build
重新获取依赖:
flutter pub get
重新运行应用:
flutter run
完。