← Back to Blog
|7 min read|Eighti Team

為什麼 Eighti 選擇 Flutter?從三款產品的實戰經驗談起

FlutterApp DevelopmentCross-Platform

跨平台框架的選擇,是每個 App 開發團隊都會遇到的關鍵決策。選錯了,可能在半年後面臨整個技術棧重來的風險。這篇文章不是又一篇 Flutter vs React Native 的功能比較表,而是我們在 Eighti 實際用 Flutter 開發 Voxly、VoxMemo 等產品後,回頭看這個選擇的真實心得。

技術選型的核心問題:不是「哪個比較好」,是「哪個適合你」

很多技術文章喜歡用「Flutter 比 React Native 好」或反過來的方式下結論。但真實世界的技術選型不是這樣運作的。

在 Eighti,我們同時具備 React Native 和 Flutter 的開發能力。選擇用哪個框架,取決於三個因素:

  1. 產品對 UI 客製化的需求有多高? Flutter 使用自己的渲染引擎(Skia / Impeller),不依賴平台原生元件。這意味著你在 iOS 和 Android 上看到的畫面是完全一致的——不是「差不多」,是像素級一致。如果你的產品需要高度自訂的 UI 動畫和互動效果,Flutter 的優勢非常明顯。
  2. 是否需要深度整合平台原生功能? 如果你的 App 大量依賴特定平台的 API(例如 iOS HealthKit 或 Android 特定硬體),React Native 的原生橋接生態系相對成熟。但如果核心邏輯是跨平台通用的,Flutter 的 platform channel 機制足夠應對大部分場景。
  3. 團隊現有技術棧是什麼? 如果團隊已經熟悉 JavaScript/TypeScript 生態系,React Native 的上手成本較低。但如果是從零開始組建,Dart 語言的學習曲線其實比多數人想像中平緩得多。

Voxly 和 VoxMemo:Flutter 在實戰中的表現

Voxly 是一款社群互動產品,VoxMemo 則專注於語音筆記。這兩款產品有幾個共同特徵:需要流暢的動畫體驗、跨平台 UI 一致性很重要、而且都需要整合 AI 功能。

動畫效能是真的好

在 Voxly 的社群動態牆中,我們需要處理大量卡片滑動、即時互動動畫。Flutter 的 widget composition 模型讓我們可以精確控制每一幀的渲染。相比之下,React Native 的動畫在跨 JS bridge 時偶爾會出現掉幀。Flutter 的動畫直接運行在渲染線程上,60fps 基本上是常態而非目標。

Hot reload 大幅提升開發效率

這不是新聞,但值得再說一次:Flutter 的 hot reload 是目前跨平台框架中體驗最好的。改一行 UI 程式碼,不到一秒就能在裝置上看到結果,而且狀態不會遺失。在 VoxMemo 的 UI 迭代階段,這讓我們的介面調整效率提升了至少兩倍。

遇到的真實挑戰

當然 Flutter 不是完美的。我們在開發過程中也遇到了一些實際問題:

  • 套件生態系成熟度參差不齊。 雖然 pub.dev 上的套件數量已經很多,但某些特定功能的套件品質和維護狀態不如 npm 生態系穩定。我們在幾個場景中選擇了自己實作,而非依賴第三方套件。
  • 原生整合需要寫 platform-specific 程式碼。 當需要存取裝置特定功能時,還是得寫 Swift/Kotlin 的 platform channel 程式碼。不過這個情況在專案中占比不高。
  • 應用程式體積相對較大。 Flutter App 的初始安裝包會比純原生 App 大一些,主要是因為包含了渲染引擎。不過對大多數使用者來說,這個差異不太影響下載意願。

Flutter + AI:意外的好搭檔

在 Eighti,AI 整合是我們的核心服務之一。Flutter 在這個面向給了我們一些意想不到的優勢。

Dart 的 async/await 模型非常適合處理 AI API 的串流回應。 當使用者發送請求到 LLM API 時,回應通常是以 streaming 方式逐字返回。Dart 原生的 Stream 概念讓我們可以非常優雅地處理這種資料流,搭配 Flutter 的 StreamBuilder widget,即時更新 UI 的程式碼簡潔而直觀。

在 VoxMemo 中,語音轉文字和 AI 摘要功能就是用這種模式實現的——使用者錄音結束後,可以即時看到文字逐步生成,體驗非常流暢。

給想做 App 的企業主的建議

如果你正在考慮開發一款 App,以下是我們基於實戰經驗給出的框架選擇建議:

選擇 Flutter 的好時機:

  • 產品需要高度自訂的 UI 和動畫
  • 你希望 iOS 和 Android 的使用體驗完全一致
  • 產品需要整合 AI 功能(串流回應、即時更新)
  • 團隊從零開始,沒有既有技術棧包袱

可能不適合 Flutter 的情境:

  • App 高度依賴特定平台的原生功能(例如 AR/VR、特殊硬體整合)
  • 團隊已經有成熟的 JavaScript/TypeScript 技術棧
  • 只需要簡單的 WebView 包裝,不需要複雜的原生體驗

最重要的是:技術選型沒有標準答案,只有適合你的答案。 如果你不確定哪種方案最適合你的產品,歡迎和我們聊聊。Eighti 的技術諮詢服務就是幫你在動手之前,先做對這個決定。


Eighti 是一間專注於 App 開發與 AI 整合的精品軟體工作室,位於台灣。我們相信最好的軟體來自小而精悍的團隊,專注、高效、透明。