跳到主内容

使用 AI 进行创作

了解如何利用 AI 构建 Flutter 应用,从将 AI 功能直接集成到应用中的强大 SDK,到能加速开发工作流的各种工具。

本指南涵盖了如何利用 AI 工具为你的 Flutter 应用构建 AI 驱动的功能,以及如何简化 Flutter 和 Dart 的开发流程。

AI 可用于构建 Flutter 应用中的 AI 功能,以及加速你的开发工作流。

你可以使用 Firebase Generative AI SDK 等强大的 SDK,将自然语言理解和内容生成等 AI 驱动的功能直接集成到 Flutter 应用中。

你还可以使用 Gemini Code Assist 和 Gemini CLI 等 AI 工具来辅助代码生成和脚手架搭建。

这些工具由 Dart 和 Flutter MCP 服务器提供支持,该服务器为 AI 提供了有关你代码库的丰富上下文。

适用于 Gemini CLI 的 Flutter 扩展插件可让你轻松利用官方规范、MCP 服务器以及自定义命令来构建应用。

此外,规则文件(rules files)有助于微调 AI 的行为并强制执行项目特定的最佳实践。

使用 Flutter 构建 AI 驱动的体验

#

在 Flutter 应用中使用 AI 可以解锁新的用户体验,使你的应用能够支持自然语言理解和内容生成。

要开始构建 AI 驱动的 Flutter 体验,请查看以下资源:

  • Firebase AI Logic Showcase - 一个通过一系列交互式演示展示 Firebase AI Logic 功能的应用。
  • Firebase AI Logic - 用于在 Flutter 中直接使用生成式 AI 功能的官方 Firebase SDK。兼容 Gemini Developer API 或 Vertex AI。若要开始,请查看官方文档
  • Genkit Dart - 一个开源框架,用于在 Dart 和 Flutter 中构建 AI 驱动的功能,支持多种模型提供商、类型安全架构和内置的可观测性。若要开始,请查看快速入门指南
  • Flutter AI 工具包 - 一个包含预构建组件的示例应用,旨在帮助你在 Flutter 中构建 AI 驱动的功能。

AI 开发工具

#

AI 不仅是应用中的一项功能,还可以成为你开发工作流中强大的助手。诸如 AntigravityGemini Code AssistGemini CLIClaude CodeCursorWindsurf 等工具可以帮助你更快地编写代码、理解复杂的概念并减少样板代码。

Flutter 的 GenUI SDK

#

GenUI SDK 将基于文本的对话转换为丰富、交互式的体验。从本质上讲,它充当了一个编排层,用于协调用户、Flutter 组件和 AI 代理之间的信息流。

在 YouTube 上新标签页中观看:“开始使用 GenUI”

欲了解更多信息,请访问 Flutter 版 GenUI SDK 文档。

Genkit Dart

#

Genkit Dart 是一个开源的、模型无关(model-agnostic)的框架,用于在 Dart 和 Flutter 中构建 AI 驱动的应用。它提供了一种结构化的方式将 AI 功能集成到应用中,支持 Google Gemini、Anthropic Claude 和 OpenAI 等多种模型提供商。

主要功能包括:

  • 模型无关的 API:以极少的代码更改在不同的 AI 提供商之间进行切换。
  • 类型安全架构:使用 schemantic 包为 AI 交互定义强类型的输入和输出。
  • Flows:可测试、可观测且可部署的函数,通过类型化的输入和输出封装 AI 逻辑。
  • Tools:定义模型可以调用的函数,以获取实时数据或执行操作。
  • 开发者 UI:一个内置的 Web UI,用于测试提示词、查看执行轨迹和调试流程。

Genkit Dart 支持 Flutter 的多种部署架构,包括在应用内部完全运行 AI 逻辑、从 Flutter 调用后端流程,或通过 Genkit 后端代理模型请求。

若要开始,请查看 Genkit Dart 快速入门

反重力

#

Antigravity 是一款 IDE 内置的 AI 代理,可以读取和编写代码、运行终端命令,并协助你构建复杂的功能。其部分能力包括:

  • 代理能力:与基于聊天的助手不同,Antigravity 可以主动编辑文件并运行终端命令来完成任务。
  • 复杂推理:它可以规划并执行多步骤工作流,使其适用于大型重构或功能实现。
  • 验证:它可以运行测试并验证其自身的更改,以确保正确性。

在 YouTube 上新标签页中观看:“10 分钟学会 Flutter + Antigravity”

欲了解更多信息,请查看 AI 编码助手 指南。

Gemini Code Assist

#

Gemini Code Assist 是一款 AI 驱动的协作工具,适用于 Visual Studio Code、JetBrains IDE 和 Android Studio 等开发环境。它对你的项目代码库有深入的理解,可以帮助你进行:

  • 代码补全和生成:根据你正在编写的代码上下文,建议并生成完整的代码块。
  • 编辑器内聊天:你可以直接在 IDE 中询问有关代码、Flutter 概念或最佳实践的问题。
  • 调试与解释:如果你遇到错误,可以请求 Gemini Code Assist 进行解释并建议修复方案。

欲了解更多信息,请查看 AI 编码助手 指南。

Gemini CLI

#

Gemini CLI 是一款命令行 AI 工作流工具。它允许你在不离开开发环境的情况下与 Gemini 模型交互,执行各种任务。你可以用它来:

  • 快速构建新的 Flutter 组件、Dart 函数或完整的应用。
  • 使用 MCP 服务器工具,例如 Dart 和 Flutter MCP 服务器。
  • 自动化诸如向 Git 仓库提交和推送更改之类的任务。

若要开始,请访问 Gemini CLI 网站,或尝试此 Gemini CLI Codelab

Flutter Gemini CLI 扩展

#

适用于 Gemini CLI 的 Flutter 扩展插件Dart 和 Flutter MCP 服务器 与规则和命令相结合。它使用默认的 Flutter 和 Dart AI 规则集,添加了如 /create-app/modify 等命令以便对应用进行结构化更改,并自动配置 Dart 和 Flutter MCP 服务器

你可以通过运行以下命令进行安装:

bash
gemini extensions install https://github.com/gemini-cli-extensions/flutter

欲了解更多信息,请查看 适用于 Gemini CLI 的 Flutter 扩展插件

Dart 和 Flutter MCP 服务器

#

为了在 Flutter 开发过程中提供协助,AI 工具需要与 Dart 和 Flutter 的开发工具进行通信。Dart 和 Flutter MCP 服务器促进了这种通信。MCP(模型上下文协议)规范概述了开发工具如何与 AI 模型共享用户代码的上下文,这使得 AI 能够更好地理解并与代码进行交互。

Dart 和 Flutter MCP 服务器通过将 AI 直接连接到你的开发环境,充分释放了其潜力。它使 AI 能够:

  • 查看组件树:可视化并调试运行中应用里的布局问题。
  • 管理依赖项:在 pub.dev 中搜索包并将其添加到你的项目中。
  • 控制运行时:触发热重载(Hot Reload)和重启,以立即查看更改。
  • 修复复杂错误:结合深度上下文分析静态和运行时错误。

这弥合了 AI 的自然语言理解与 Dart 和 Flutter 开发工具套件之间的鸿沟。

若要开始,请查看 Dart 和 Flutter MCP 服务器 的官方文档。

Flutter 和 Dart 开发规范

#

你可以结合 AI 驱动的编辑器使用规则文件,为底层的 LLM 提供上下文和指令。若要开始,请访问 Flutter 和 Dart AI 规则 指南。