flutter项目的创建和目录结构

  1. 创建项目
  2. 目录结构
    1. 平台端代码目录(原生部分)
    2. Dart 代码目录
    3. 测试目录
    4. 配置与依赖文件

创建项目

使用 vscode 创建项目:cmd + shift + p ,然后选择 flutter new project

选择Application类型

你也可以用 cli 方式 【可选】

flutter create flutter_quickstart_learn

目录结构

.
├── android // 原生程序
│   ├── app
│   ├── gradle
│   ├── build.gradle
│   ├── flutter_quickstart_learn_android.iml
│   ├── gradle.properties
│   ├── gradlew
│   ├── gradlew.bat
│   ├── local.properties
│   └── settings.gradle
├── ios // 原生程序
│   ├── Flutter
│   ├── Runner
│   ├── Runner.xcodeproj
│   └── Runner.xcworkspace
├── lib // flutter dart 代码
│   └── main.dart
├── linux // linux 端
│   ├── flutter
│   ├── CMakeLists.txt
│   ├── main.cc
│   ├── my_application.cc
│   └── my_application.h
├── macos // macos 端
│   ├── Flutter
│   ├── Runner
│   ├── Runner.xcodeproj
│   └── Runner.xcworkspace
├── test // 测试目录
│   └── widget_test.dart
├── web // web 端
│   ├── icons
│   ├── favicon.png
│   ├── index.html
│   └── manifest.json
├── windows // windows 端
│   ├── flutter
│   ├── runner
│   └── CMakeLists.txt
├── README.md
├── analysis_options.yaml
├── flutter_quickstart_learn.iml
├── pubspec.lock // 包版本 lock
└── pubspec.yaml // flutter 配置文件,包管理 资源管理 配置管理

平台端代码目录(原生部分)

这些文件夹存放的是不同平台的原生工程代码,Flutter 的核心是 Dart,但最终还是会打包成各平台的原生应用,这些目录就是原生壳子。

平台端代码主要是在你需要写平台特有功能(比如调用摄像头、蓝牙、文件系统)或者改打包配置的时候才会动。

如果你只写纯 Flutter 逻辑,通常不需要手动修改这些文件夹里的代码。

目录 平台 作用
android/ Android 存放 Android 原生工程(Java/Kotlin + Gradle 构建系统)。主要用于修改 Android 原生配置(如权限、Gradle 插件、包名等),或者编写原生插件。
ios/ iOS 存放 iOS 原生工程(Swift/Objective-C + Xcode)。可以修改 App 图标、启动页、iOS 权限配置等。
linux/ Linux 桌面 存放 Linux 原生代码(C++ + CMake),主要用于桌面端构建。
macos/ macOS 桌面 存放 macOS 原生工程(Swift/Objective-C + Xcode)。
windows/ Windows 桌面 存放 Windows 原生工程(C++ + CMake)。
web/ Web 存放 Web 构建相关文件(HTML、CSS、JS),你可以在这里加自定义的 Web 配置,例如修改 index.htmlfavicon.png

Dart 代码目录

目录 作用
lib/ 存放你的 Flutter/Dart 主程序代码,是核心业务逻辑与 UI 代码的地方。
lib/main.dart 程序入口文件,main() 方法就是从这里启动的。

测试目录

目录 作用
test/ 存放 Flutter/Dart 的单元测试与 widget 测试代码。
widget_test.dart 一个默认的 Flutter 组件测试示例。

配置与依赖文件

文件 作用
pubspec.yaml Flutter 的核心配置文件,用来管理依赖包、资源文件、字体等。相当于 Node.js 里的 package.json
pubspec.lock 锁定依赖的具体版本,保证不同机器上运行时依赖一致。
analysis_options.yaml Dart/Flutter 静态代码分析规则配置,用来定义代码规范(比如变量命名规则、是否允许某些语法)。
flutter_quickstart_learn.iml / .idea IDE(IntelliJ/Android Studio)的工程配置文件。
README.md 项目说明文档,通常用 Markdown 编写。

×

喜欢就点赞,疼爱就打赏