跳到主內容

使用 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 規則 指南。