文章目录
- 参考网址
- 安装
- 配置
- 运行 flutter doctor
- 安装必要的依赖
- Flutter镜像源设置
- 永久设置(推荐)
- Windows 系统
- macOS/Linux 系统
- 常用国内镜像源
- 检查镜像是否生效
- 其他优化建议
- 恢复默认源
- 常用命令
- 项目相关
- 构建相关
- 包管理
- 开发工具
- 测试相关
- 设备与模拟器
- 升级与维护
- 插件与包
- 国际化
- 性能分析
- 其他实用命令
- 常见问题解决
- 权限问题(macOS/Linux)
- 网络问题(中国用户)
- 清除缓存
- 推荐配置
- VS Code 扩展
- Android Studio 插件
- kDebugMode
- 自动判断逻辑
- 使用示例
- 基本使用
参考网址
- Flutter 官方文档
- Flutter 官方中文文档
- Flutter 官方中文社区
- 官方仓库
安装
可以参考官网上的 手动安装 Flutter
配置
# 编辑 ~/.bashrc 或 ~/.zshrcexportPATH="$HOME/flutter/bin:$PATH"# 立即生效source~/.zshrc# 或 source ~/.bashrc运行 flutter doctor
flutter doctor这会检查并显示需要安装的依赖项。
安装必要的依赖
根据flutter doctor提示安装:
- Android Studio(Android 开发)
- Xcode(iOS 开发,仅 macOS)
- VS Code 或 Android Studio IDE
Flutter镜像源设置
因国内访问https://pub.dev/网络不是很稳定,所以还是要设置一下镜像源比较好
永久设置(推荐)
Windows 系统
- 在环境变量中添加:
PUB_HOSTED_URL=https://pub.flutter-io.cn FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cnmacOS/Linux 系统
编辑~/.bashrc、~/.zshrc或相应shell配置文件:
# Flutter镜像源exportPUB_HOSTED_URL=https://pub.flutter-io.cnexportFLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn然后执行:
source~/.zshrc# 或 source ~/.bashrc常用国内镜像源
Flutter 社区在中国大陆维护的官方镜像源(推荐),网站也可以访问,与pub.dev官网页面都是一样的:
PUB_HOSTED_URL=https://pub.flutter-io.cnFLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn清华大学镜像源:
PUB_HOSTED_URL=https://mirrors.tuna.tsinghua.edu.cn/dart-pubFLUTTER_STORAGE_BASE_URL=https://mirrors.tuna.tsinghua.edu.cn/flutter上海交大镜像源:
PUB_HOSTED_URL=https://mirror.sjtu.edu.cn/dart-pubFLUTTER_STORAGE_BASE_URL=https://mirror.sjtu.edu.cn/flutter腾讯云镜像源:
PUB_HOSTED_URL=https://mirrors.cloud.tencent.com/dart-pubFLUTTER_STORAGE_BASE_URL=https://mirrors.cloud.tencent.com/flutter检查镜像是否生效
# 查看环境变量echo$PUB_HOSTED_URLecho$FLUTTER_STORAGE_BASE_URL# 测试下载速度flutter pub get --verbose其他优化建议
- 使用 VPN 访问国际网络
- 清理缓存:
flutter pub cache clean - 禁用 IPv6(如果网络支持不好)
恢复默认源
# 删除或注释环境变量中的设置# 或者临时使用:unsetPUB_HOSTED_URLunsetFLUTTER_STORAGE_BASE_URL常用命令
项目相关
# 创建新项目flutter create 项目名称# 运行项目flutter run# 指定设备运行flutter run -d<device_id>flutter run -d chrome# 运行在 Chromeflutter run -d android# 运行在 Android 设备flutter run -d ios# 运行在 iOS 设备# 列出所有连接的设备flutter devices构建相关
# 调试构建flutter build apk --debug flutter build ios --debug# 发布构建flutter build apk --release flutter build ios --release flutter build appbundle# Android App Bundleflutter build ipa# iOS IPA 文件flutter build web# Web 应用包管理
# 获取 packagesflutter pub get# 升级 packagesflutter pub upgrade# 添加依赖flutter pubaddpackage_name# 清理并重新获取flutter clean&&flutter pub get开发工具
# 热重载(运行中按 r)# 热重启(运行中按 R)# 分析代码flutter analyze# 格式化代码flutterformat.# 修复 dart 代码格式dart fix --apply测试相关
# 运行所有测试fluttertest# 运行特定测试文件fluttertesttest/文件名_test.dart# 运行测试并生成覆盖率报告fluttertest--coverage设备与模拟器
# 启动安卓模拟器flutter emulators --launch<emulator_id># 列出可用模拟器flutter emulators# 创建新的安卓模拟器flutter emulators --create[--name xyz]# 擦除模拟器数据flutter emulators --wipe-data升级与维护
# 升级 Flutterflutter upgrade# 切换 Flutter 渠道flutter channel stable# 稳定版flutter channel beta# 测试版flutter channel dev# 开发版flutter channel master# 主分支# 查看当前渠道flutter channel# 清理构建缓存flutter clean插件与包
# 生成插件模板flutter create --template=plugin 插件名称# 生成包模板flutter create --template=package 包名称# 发布包到 pub.devflutter pub publish国际化
# 生成国际化文件flutter gen-l10n# 提取要翻译的字符串flutter pub run intl_translation:extract_to_arb --output-dir=lib/l10n lib/localization.dart性能分析
# 性能追踪flutter run --profile# 调试模式运行flutter run --debug# 显示性能叠加层flutter run --show-performance-overlay其他实用命令
# 查看 Flutter 信息flutter --version flutter config --list# 显示帮助flutterhelpflutter<command>--help# 修复常见问题flutter doctor -v# 查看详细诊断信息flutter doctor --android-licenses# 接受 Android 许可证常见问题解决
权限问题(macOS/Linux)
sudochmod-R755flutter/网络问题(中国用户)
# 设置环境变量exportPUB_HOSTED_URL=https://pub.flutter-io.cnexportFLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn# Windows PowerShell$env:PUB_HOSTED_URL="https://pub.flutter-io.cn"$env:FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"清除缓存
flutter precache推荐配置
VS Code 扩展
- Dart
- Flutter
- Awesome Flutter Snippets
- Flutter Tree
- Pubspec Assist
Android Studio 插件
- Flutter
- Dart
kDebugMode
kDebugMode是 Flutter 内置的常量,不需要手动配置。它由 Flutter 框架根据编译模式自动设置。
它定义在foundation.dart中:
import'package:flutter/foundation.dart';自动判断逻辑
Flutter 根据运行模式自动设置kDebugMode的值:
| 运行模式 | kDebugMode值 | 说明 |
|---|---|---|
flutter run | true | 调试模式 |
flutter run --release | false | 发布模式 |
flutter run --profile | false | 性能分析模式 |
flutter build apk/ios | false | 生产构建 |
使用示例
基本使用
import'package:flutter/foundation.dart';MaterialApp(debugShowCheckedModeBanner:kDebugMode,// 只在调试模式显示debug标签home:MyHomePage(),)调试模式会有一个DEBUG 条带的标识