Flutter开发ios之各目录介绍

96 阅读4分钟

Visual Studio Code 打开Flutter项目,目录如下:

image.png 目录介绍

  1. .dart_tool

    • 作用:Dart 工具和编译缓存目录。
    • 详解:该目录由 Flutter/Dart 自动生成并管理,里面存放了编译缓存、依赖信息(如 package_config.json)、插件元数据等内容。通常不需要手动修改,也不应提交到版本管理。
  2. android

    • 作用:Android 平台的原生工程目录。
    • 详解:当你在 Flutter 中需要编写或修改 Android 端的原生代码(Java/Kotlin),或者自定义 Gradle 构建脚本时,就会在这个目录下进行操作。该目录包含 AndroidManifest.xml、Gradle 配置等文件。
  3. build/native_assets/ios

    • 作用:Flutter 构建时产生的 iOS 平台本地(Native)资源目录。
    • 详解build 是 Flutter 编译输出的默认目录,用于存放临时的中间文件或最终构建产物。其下的 native_assets/ios 通常用于 iOS 相关的编译缓存或资源文件。一般不需要手动修改或提交到版本管理。
  4. ios

    • 作用:iOS 平台的原生工程目录。
    • 详解:当你需要编写或修改 iOS 端的原生代码(Objective-C/Swift),或者自定义 Xcode 构建配置时,就会在这个目录下进行操作。该目录包含 Info.plist、Xcode 工程文件等。
  5. lib

    • 作用:存放 Flutter 应用的主要 Dart 源代码。
    • 详解:这是 Flutter 工程最核心的目录,通常包含 main.dart 文件以及其他业务逻辑、UI 界面、路由等 Dart 文件。你会在这里编写绝大部分与应用逻辑相关的代码。
  6. linux

    • 作用:Linux 桌面端的原生工程目录。
    • 详解:如果启用了 Flutter 对 Linux 桌面应用的支持,这里就会包含构建脚本、C++ 桥接代码等,用于生成 Linux 平台可执行文件。未启用时可能不存在该目录。
  7. macos

    • 作用:macOS 桌面端的原生工程目录。
    • 详解:类似于 iOS 目录,但针对 macOS 桌面应用。如果启用了 Flutter 对 macOS 的桌面支持,这里会有 Xcode 项目文件、Swift/Objective-C 代码等。
  8. test

    • 作用:存放测试代码。
    • 详解:通常用于单元测试、Widget 测试或集成测试。你可以在这里创建 _test.dart 文件,使用 flutter test 或在 IDE 中直接运行测试。
  9. web

    • 作用:Flutter Web 的相关文件和配置目录。
    • 详解:如果启用了 Web 支持,这里会包含 index.html 等用于部署或自定义 Web 应用的文件。Flutter 编译 Web 端时也会在此生成部分辅助文件。
  10. windows

    • 作用:Windows 桌面端的原生工程目录。
    • 详解:如果启用了 Flutter 对 Windows 桌面应用的支持,这里就会有 Visual Studio 工程文件及 C++ 代码,用于生成 Windows 平台可执行文件。
  11. .flutter-plugins / .flutter-plugins-dependencies

    • 作用:记录 Flutter 插件的配置信息和依赖。
    • 详解:由 Flutter 工具自动生成和维护,存放插件名称、路径等信息。一般不需要手动修改,Flutter 在构建时会读取这些文件以确定插件的配置。
  12. .gitignore

    • 作用:Git 版本控制的忽略文件。
    • 详解:指定哪些文件或目录在使用 Git 进行版本控制时不应被提交,比如编译产物、临时文件等。可以根据需要在这里添加或移除忽略规则。
  13. .metadata

    • 作用:存放 Flutter 项目的一些元数据信息。
    • 详解:通常包含创建该项目时使用的 Flutter 版本等信息。由 Flutter 工具自动生成和更新,开发者通常不需要手动修改。
  14. analysis_options.yaml

    • 作用:配置 Dart 分析器的规则。
    • 详解:用于启用或禁用特定的 Dart 语言规则、Lint 检查等。你可以在这里自定义编码规范或启用更严格的分析规则,以保证代码质量。
  15. pubspec.lock

    • 作用:锁定项目依赖的具体版本。
    • 详解:由 Dart 的依赖管理工具(pub)自动生成,确保团队中每个人使用的依赖版本一致,避免因依赖更新而产生不一致的构建结果。通常需要提交到版本库。
  16. pubspec.yaml

    • 作用:Flutter 项目的核心配置文件。
    • 详解:定义了应用名称、版本号、依赖库、Flutter SDK 约束等信息。每次添加、移除或升级依赖时都会修改该文件,然后通过 flutter pub get 或 IDE 同步更新依赖。